User Rating 0.0
Total Usage 0 times
Presets:
Favorites 0
Is this tool helpful?

Your feedback helps us improve.

About

Fictional city naming is a phonotactic problem. A name like "Velmoria" feels authentic because it follows Latin-Romance consonant-vowel alternation patterns. A name like "Xbrtfq" does not. This generator applies linguistic syllable-chaining rules drawn from 12 real cultural families - Germanic, Slavic, East Asian, Arabic, Celtic, and others - to produce names that pass the human ear test. Each generated name is scored for pronounceability using a CV-pattern ratio where the consonant cluster length c never exceeds the phonotactic maximum for the selected language family. Garbage output is filtered before display.

The tool is designed for writers, game designers, and worldbuilders who need volume without sacrificing plausibility. Generating 50 names per batch, filtered by origin and suffix pattern, replaces hours of manual brainstorming. Limitation: names are algorithmically plausible, not culturally vetted. A generated "Japanese-style" name follows Japanese phonotactics (mora structure, no final consonants except n) but is not guaranteed to carry appropriate meaning in Japanese.

city name generator fictional city names fantasy city names world building name generator random city name town name generator

Formulas

Each city name is constructed by chaining k syllables sampled from a culture-specific phoneme table. The syllable count is bounded:

2 k 5

Each syllable follows a pattern template P drawn from the culture's allowed set (e.g., CV, CVC, CCVC). A consonant cluster validity check enforces:

len(cluster) Cmax

where Cmax is the culture-specific maximum consonant cluster length from the reference table. Pronounceability is scored by calculating the consonant-to-vowel ratio R:

R = nconsonantsnvowels + 1

Names with R > 3.0 are rejected as unpronounceable. The + 1 in the denominator prevents division by zero for vowel-less edge cases. Cultural suffixes are appended with probability psuffix = 0.6, drawn from the culture's suffix pool. The final name is title-cased and deduplicated against previously generated results in the current session.

Where k = number of syllables, P = syllable pattern template, Cmax = max consonant cluster for culture, R = pronounceability ratio, nconsonants = consonant count, nvowels = vowel count, psuffix = suffix application probability.

Reference Data

Language FamilyTypical SuffixesSyllable PatternMax Consonant ClusterExample Real CitiesCommon Phonemes
Germanic-burg, -heim, -feld, -stadtCVC, CVCC3Hamburg, Mannheim/x/, /ts/, /pf/
Romance (Latin)-ia, -ona, -ello, -enzaCV, CVC2Firenze, Valencia/ɲ/, /ʎ/, /tʃ/
Slavic-grad, -ov, -sk, -iceCCV, CCVC4Volgograd, Brno/ʒ/, /ʂ/, /ts/
Celtic-wen, -dun, -aber, -llanCVC, VC2Aberdeen, Llandudno/θ/, /ð/, /x/
Arabic-abad, -stan, -iyya, -purCVC, CVCC2Islamabad, Riyadh/ʕ/, /ħ/, /q/
East Asian (JP)-shi, -mura, -kawa, -yamaCV, CVN1Hiroshima, Yokohama/ɾ/, /ɴ/
East Asian (CN)-zhou, -jing, -cheng, -shanCV, CVC1Beijing, Hangzhou/tɕ/, /ʂ/, /ɕ/
Nordic-fjord, -vik, -holm, -byCVC, CVCC3Reykjavik, Stockholm/j/, /ɡ/, /sk/
African-ongo, -anda, -ane, -osiCV, CVCV2Kampala, Nairobi/ŋ/, /ɓ/, /ɗ/
Polynesian-nui, -roa, -iti, -angaCV, VCV1Honolulu, Apia/ʔ/, /ŋ/, /ɾ/
Mesoamerican-tlan, -pan, -can, -malCVC, CVCCV2Tenochtitlan, Copán/tɬ/, /ʃ/, /k/
Fantasy (Generic)-dor, -rath, -lyn, -mereCVC, CV2Gondor, RivendellMixed origins
Sci-Fi-ax, -ion, -ex, -primeCVC, VC2Coruscant, ArrakisHard stops, sibilants
Elvish/Tolkien-iel, -ath, -nost, -wenCV, CVC2Lothlórien, Gondolin/l/, /ð/, /r/

Frequently Asked Questions

Each language family has a defined maximum consonant cluster length (e.g., Slavic allows up to 4, Japanese allows only 1). The generator enforces these constraints during syllable chaining. Additionally, a consonant-to-vowel ratio check rejects any name where the ratio exceeds 3.0, which empirically correlates with human difficulty in pronunciation. Polynesian-style names, for example, enforce strict CV (consonant-vowel) alternation, making every generated name trivially pronounceable.
Yes. With approximately 2.5 million named settlements worldwide and the generator using real phonotactic rules, collisions are statistically inevitable - especially for short names (2 syllables) in common language families. The generator does not cross-reference a global city database. For published works, always verify generated names against geographic databases such as GeoNames (11+ million entries) before committing to a name.
Syllable structure directly affects name length. Japanese mora-based phonotactics (CV pattern) produce names like "Takashimura" with many short syllables. Germanic names use denser CVC/CVCC patterns, packing more phonetic information per syllable, resulting in shorter but heavier names like "Steinburg". The generator's syllable count range of 2 to 5 interacts with these patterns to produce culturally appropriate length distributions.
Each culture has a curated suffix pool drawn from real toponymic conventions. Germanic cities historically use "-burg" (fortified town), "-heim" (home), "-feld" (field). Slavic cities use "-grad" (city), "-ov" (possessive). Suffixes are applied with 60% probability to allow variation. When applied, they replace the final syllable to maintain natural syllable count rather than simply appending, which would create unnaturally long names.
Fantasy style borrows heavily from Celtic and Old English phonetics - soft consonants, liquid sounds (/l/, /r/), and vowel-heavy patterns - following the Tolkien tradition. Sci-Fi style favors hard stops (/k/, /x/), sibilants (/s/, /z/), and unusual vowel combinations that feel alien. Both use relaxed phonotactic constraints compared to real languages, allowing combinations that no natural language permits but that feel genre-appropriate to readers.
Partially. The user-set syllable range provides bounds, but the generator respects cultural minimums. Japanese names rarely work with a single syllable because the CV pattern produces sounds too short to register as place names. If you set the range to 1-2 syllables with Japanese style, the generator will internally clamp to a minimum of 2. The UI reflects the actual range used.
Each batch maintains a Set of lowercase normalized results. Before adding a name to the output, it is checked against this Set. If a collision occurs, the generator re-rolls (up to 10 attempts) before giving up on that slot. For large batches (50 names) with restrictive settings (e.g., 2 syllables, Polynesian), the combinatorial space may be small enough that some slots go unfilled rather than producing duplicates.