How Baby Name Scoring Software Actually Works: Inside BabyNameAi's Engine

Apr 21, 2026

Many parents, when choosing a Chinese name for their baby, instinctively plug candidates into "name scoring software." A score of 98 brings relief; 72 triggers doubt. But where do these numbers come from? Why does the same name get wildly different scores across platforms? And most importantly—does a high score actually mean a good name?

As the founder of BabyNameAi (好名宝 / HaoMingBao), I want to unpack how mainstream scoring tools work, explain their limitations, and show how our three-layer engine differs fundamentally from traditional scorers.

Four Common Scoring Dimensions

Most name-scoring tools evaluate names across four core dimensions:

1. Five-Grid Three-Talent (Stroke Numerology)

This is the most common scoring basis. The "five grids" (五格) refer to Heaven, Personality, Earth, Outer, and Total grids, calculated from surname and given-name stroke counts, then mapped to the "81 Numerology Chart" for auspiciousness. The "three talents" (三才) assess whether the Five Elements (金/木/水/火/土 — Metal, Wood, Water, Fire, Earth) of Heaven, Personality, and Earth grids harmonize or clash.

Typical algorithm:

  • Heaven grid = surname strokes + 1 (single surname) or sum of both characters (compound surname)
  • Personality grid = last surname character + first given-name character strokes
  • Earth grid = sum of given-name character strokes
  • Outer grid = Total - Personality + 1
  • Total grid = sum of all strokes

For example, 王诗涵 (Wáng Shī Hán, 4+13+12 strokes): Heaven 5 (Earth), Personality 17 (Metal), Earth 25 (Earth), Outer 13 (Fire), Total 29 (Water). The software evaluates relationships like Earth generates Metal, Earth restricts Water, and outputs a composite score.

Limitations:

  • Stroke-count chaos: Kangxi Dictionary strokes, simplified strokes, and "name-study strokes" (where 氵 counts as 4) vary by platform. Same name, different counts.
  • Numerology disputes: The 81-number system itself is a modern import from Japanese name studies, and different schools disagree on which numbers are auspicious.
  • Ignores meaning and sound: Pure numerology might score 王屎涵 (Wáng Shǐ Hán, "King Shit-Contain") highly because the stroke math works, despite the obvious semantic disaster.

2. Five Elements Configuration

This dimension checks whether the name's elemental attributes match the child's birth chart. In traditional Chinese naming, bazi (八字, "Eight Characters") is a birth-time chart used to identify which of the Five Elements the child's chart over- or under-emphasizes. Software calculates the bazi from birth date and time, determines which elements are favorable (e.g., Water and Wood), then checks whether the name's characters align.

Typical logic:

  • Input birth date/time → generate Four Pillars (year, month, day, hour)
  • Analyze day-stem strength and elemental balance → identify favorable elements
  • Check name characters' elemental attributes → score alignment

For instance, if a child's bazi favors Water and Wood, 王清林 (Wáng Qīng Lín, Water + Wood, "clear forest") scores well, while 王炎焱 (Wáng Yán Yàn, Fire + Fire, "flame blaze") gets penalized.

Limitations:

  • Elemental attribution disputes: The same character may be classified differently across dictionaries. 涵 (hán, "contain") is Water in some systems (氵 radical), Earth in others (semantic field of containment).
  • Shallow bazi analysis: True bazi analysis involves Ten Gods, chart patterns, and decade-luck cycles. Most software just counts elements and applies "补缺" (fill-the-gap) logic, which is often a misconception—sometimes a "missing" element is actually beneficial.
  • Over-reliance on補缺: Modern practice emphasizes balance over completion. A chart "lacking" an element may be perfectly strong.

3. Zodiac Compatibility

Based on the child's sheng xiao (生肖, zodiac animal), software checks whether name characters align with that animal's symbolic preferences. Rat years favor 米/豆/禾 (grains), avoid 午/马 (Horse, due to Rat-Horse clash). Dragon years favor 水/雨/云 (water, rain, clouds—dragons thrive in water), avoid 戌/犬 (Dog, due to Dragon-Dog clash).

Limitations:

  • Folk tradition, not systematic theory: Zodiac taboos vary by region and master. Different sources contradict each other.
  • Conflicts with bazi: If the bazi favors Fire but the child is born in a Rabbit year (rabbits symbolically "fear fire"), which takes precedence?
  • Questionable real-world impact: Hard to verify whether zodiac compatibility affects life outcomes in modern society.

4. Phonetics and Form

Some newer tools add phonetic and visual assessments:

  • Tone patterns: Avoid three characters with the same tone (e.g., 张三三 Zhāng Sān Sān, all flat tone); aim for tonal variation.
  • Initial/final consonants: Avoid tongue-twisting clusters (e.g., 朱书竹 Zhū Shū Zhú, all zh/sh initials).
  • Character structure: Avoid three characters with the same structural type (all left-right or all top-bottom); aim for visual balance.

Limitations:

  • Low weight: These dimensions typically account for only 10-20% of the total score.
  • No homophone detection: Many tools miss embarrassing sound-alikes (e.g., 范统 Fàn Tǒng sounds like 饭桶 fàn tǒng, "rice bucket" = idiot).

Three Fundamental Problems with Traditional Scorers

Mainstream name-scoring software suffers from three root issues:

Problem 1: Inconsistent Standards, Meaningless Scores

The same name scores 95 on Platform A, 78 on Platform B. Why?

  • Different stroke-count systems (Kangxi vs. simplified vs. name-study)
  • Different elemental attribution systems (radical-based vs. semantic vs. phonetic)
  • Different weighting schemes (some prioritize grids, others bazi)

Result: the score itself loses reference value. Parents feel false confidence at 98 or unwarranted anxiety at 72, but the number may just reflect one arbitrary algorithm, not the name's actual quality.

Problem 2: Scoring Without Generation—Doesn't Solve the Core Problem

Traditional scorers follow this flow: parents brainstorm names → input them for scoring → filter by score. But the problem is: most parents can't generate compliant names in the first place.

Especially when juggling bazi requirements, classical literary sources, avoiding rare characters, avoiding homophones, and avoiding overused names—the candidate pool shrinks to nearly zero. Scoring tools become "Monday-morning quarterbacks," telling you "this one's bad" but never "here's what to do instead."

Problem 3: Ignores Modern Practicality

A name with perfect grid scores and elemental harmony can still face these modern issues:

  • Rare characters: Can't be typed or handwritten easily, causing problems with ID cards, exams (e.g., 赟 yūn, 喆 zhé)
  • Embarrassing homophones: 杜子腾 (Dù Zǐ Téng) sounds like 肚子疼 (dù zi téng, "stomachache"); 范剑 (Fàn Jiàn) sounds like 犯贱 (fàn jiàn, "act cheap")
  • Overused: 王梓涵 (Wáng Zǐ Hán), 李梓轩 (Lǐ Zǐ Xuān)—three kids per kindergarten class with the same name
  • Gender ambiguity: 王诗涵 (Wáng Shī Hán) works for boys or girls, leading to confusion

Traditional scorers either ignore these issues or assign them minimal weight.

BabyNameAi's Three-Layer Engine: Constraint → Generation → Validation

BabyNameAi (好名宝 / HaoMingBao) is not a scoring tool—it's a name generation engine. Our goal isn't to score your existing names, but to generate compliant candidates within traditional constraints using AI, then filter out impractical options through modern linguistic validation.

The process has three layers:

Layer 1: Traditional Constraint Layer (Bazi + Classical Sources)

This layer applies hard constraints to ensure generated names meet traditional requirements:

  1. Bazi analysis: Input the child's birth date and time. We generate the full Four Pillars, analyze day-stem strength, elemental balance, and chart pattern to identify the true favorable elements—not just "fill what's missing."

  2. Elemental filtering: Based on favorable elements, we filter our character database for matching attributes. If Water and Wood are favorable, we prioritize Water/Wood characters and avoid Fire/Earth.

  3. Classical sources: Our database tags each character with its appearances in the Shijing (《诗经》, Book of Songs), Chu Ci (《楚辞》, Songs of Chu), and Lunyu (《论语》, Analects). For example, 清 (qīng, "clear") appears in 「河水清且涟猗」("The river water, clear and rippling") from the Shijing; 嘉 (jiā, "excellent") appears in 「嘉南州之炎德」("Praise the fiery virtue of the southern lands") from the Chu Ci.

Output from this layer: a candidate character pool that matches bazi requirements and has classical pedigree.

You can input your baby's birth details on the BabyNameAi name generator to see this filtering in action.

Layer 2: AI Generation Layer (LLM + Semantic Understanding)

With the candidate pool ready, we don't just randomly combine characters. We use a large language model (LLM) for semantic generation:

  1. Understand parental intent: If parents want "elegant and scholarly," the model favors characters like 清/雅/书/涵 (qīng, yǎ, shū, hán—clear, elegant, book, contain). If they want "sunny and cheerful," it selects 阳/朗/晨/悦 (yáng, lǎng, chén, yuè—sun, bright, morning, joy).

  2. Avoid awkward pairings: Traditional tools might generate 王水木 (Wáng Shuǐ Mù, "King Water-Wood")—elementally correct but aesthetically dead. Our model evaluates semantic fit: 清涵 (Qīng Hán, "clear and encompassing") flows better than 清木 (Qīng Mù, "clear wood").

  3. Ensure diversity: For the same bazi, we generate 10-20 stylistically varied candidates—some classical, some modern, some strong, some gentle—so parents have real choices.

Output from this layer: a batch of semantically coherent, stylistically diverse candidate names.

For classical-style names, visit our Shijing name tool.

Layer 3: Modern Validation Layer (Homophones + Rare Characters + Popularity)

After generating candidates, we run three validation checks to filter out impractical names:

  1. Homophone detection: We check full pinyin and initial/final combinations for embarrassing sound-alikes. Names like 范统 (Fàn Tǒng → 饭桶 fàn tǒng, "idiot") or 史珍香 (Shǐ Zhēn Xiāng → 屎真香 shǐ zhēn xiāng, "shit smells good") get flagged as high-risk.

  2. Rare character filtering: We check Unicode encoding and usage frequency to flag characters that cause typing or handwriting problems (e.g., 赟 yūn, 喆 zhé, 彧 yù).

  3. Popularity estimation: Using public name databases and our own statistical models, we estimate how common each name is. Names like 梓涵 (Zǐ Hán) and 梓轩 (Zǐ Xuān) get flagged for high duplication risk.

Output from this layer: a practicality score and risk alerts for each candidate.

You can test any name on our name testing page for detailed homophone, rare-character, and popularity analysis.

BabyNameAi vs. Traditional Scorers: The Core Difference

DimensionTraditional ScorersBabyNameAi Three-Layer Engine
Core functionPost-hoc scoringProactive generation + validation
Bazi analysisSimple elemental countingFull Four-Pillar analysis with pattern recognition
Character databaseGeneric character tablesProfessionally tagged with elements, sources, frequency
Combination logicRandom or rule-basedAI semantic understanding for natural pairings
Modern validationAbsent or minimal weightTriple validation: homophones, rare chars, popularity
Score meaningSingle opaque numberLayered scores with explicit rationale

Concrete example:

Suppose the baby's surname is 王 (Wáng), bazi favors Water and Wood, and parents want a poetic name.

  • Traditional scorer: You brainstorm 王清林 (Wáng Qīng Lín), 王涵木 (Wáng Hán Mù), 王水森 (Wáng Shuǐ Sēn), input them for scores, but none feel right.
  • BabyNameAi: The system generates 王清涵 (Wáng Qīng Hán, "clear and encompassing," from the Shijing), 王沐泽 (Wáng Mù Zé, "bathed in grace," Water + Wood), 王澜舒 (Wáng Lán Shū, "rippling ease," melodious)—ten candidates, each tagged with elements, sources, homophone risks, and popularity. You just pick your favorite.

Why We Don't Give a "Total Score"

You may notice BabyNameAi doesn't output a simple "95" or "82." The reason is straightforward: naming is a multi-objective optimization problem with no single "best" solution.

  • Some parents prioritize bazi alignment and accept slightly rare characters.
  • Others prioritize practicality and tolerate less-than-perfect elemental matches to avoid homophones and overuse.
  • Some want classical elegance; others prefer modern simplicity.

Our role is to provide tools and information so parents can make choices aligned with their own values—not to impose a single number that decides for them.

For each name, we provide:

  • ✅ Bazi elemental alignment
  • ✅ Classical literary sources
  • ✅ Homophone risk alerts
  • ✅ Rare character warnings
  • ✅ Popularity estimates

Parents can weigh these dimensions according to their own priorities.

Summary: Scoring Is a Means, a Good Name Is the Goal

Mainstream name-scoring software essentially digitizes parts of traditional numerology to give parents "psychological reassurance." But they don't solve the core challenge: finding names that satisfy traditional constraints, carry beautiful meaning, and pass modern validation—all from a vast character space.

BabyNameAi's three-layer engine—traditional constraint → AI generation → modern validation—is built to solve this. We don't let the model run wild (that produces bazi-noncompliant names), nor do we let traditional rules rigidly constrain (that misses good characters). We find the balance.

Our goal isn't to give you a high score. It's to give you a name that truly fits your baby and that you genuinely love.

If you're naming your baby, visit the BabyNameAi name generator, input birth details and style preferences, and let AI generate candidates. If you already have a name in mind, use the name testing tool for comprehensive validation.

Naming is serious work. It's also beautiful work. I hope this article helps you understand the logic behind "scoring" and make a more informed choice.

Yuan Zhou

Yuan Zhou

How Baby Name Scoring Software Actually Works: Inside BabyNameAi's Engine | Blog