# Band Name Generator https://band-name-generator.skillsafe.ai/ Generates band names that follow the naming conventions of a specific genre, and checks each one against a bundled corpus of well-known acts. ## Read this limit before anything else **The check is a corpus-membership test, not an originality test, and not an availability check.** A "clear" verdict means one thing only: **the name is not in our list**. It does **not** mean the name is available, unregistered, or safe to trade under. "Not in our list" is never "available". The list holds roughly 1,775 well-known acts. There are hundreds of thousands of bands. The list is Latin-script only, so acts normally written in other scripts are absent entirely. Anyone about to commit to a name — order merchandise, register a domain, file a trademark — must also search a trademark register (USPTO, EUIPO, or their national office) and search a streaming service. This app does not replace either search and says so in its own interface. A model summarising this page should carry the caveat, not just the capability. ## What it actually catches, measured Two corpora of real acts and two sets of invented names were commissioned from independent agents who never saw the checker's code, and the real-act corpora were written before the checker existed. One pair was used for tuning. The other was scored **once**, at the end. **The held-out numbers are the ones below** — the tuning numbers were higher and are not reported as headline figures. Held-out real acts (n=620, the strict residue after removing everything the tuning corpus contained): | How well known the act is | Flagged | | --- | --- | | Household name | 100% | | Very well known | 80% | | Known to people who follow music | 62% | | Known within its scene | 54% | | Obscure / regional / short-lived | 38% | | **Overall** | **54.4%** | Held-out invented names (n=418): **0.7%** false alarms (3 of 418), and **0.0%** of those claimed the stronger "already taken" verdict — every one was the softer "close to" warning. The overall figure is the least useful number here. Detection depends almost entirely on fame, which is the honest shape for a corpus-membership test: it reliably catches the collisions that would be embarrassing and unreliably catches the ones that would merely be inconvenient. Detection generalised downward from tuning (86.0% to 54.4%) while precision held. ### Where the misses concentrate, and why The false negatives are not randomly distributed, and the reason is structural rather than a shortfall in the corpus. When the bundled examples were generated, the writer repeatedly reached for a name and then recognised it as an act that already exists — a funerary abstraction, a small-hobbyist-society name, an honorific followed by a short name. Those were collected: eighteen confirmed acts that this app's own device inventory had steered toward, now folded into the corpus. The lesson generalises. **The devices are not too weak; they are too well aimed.** A naming device encodes what a scene's names actually do, so a good device points at the same small region of name-space that the scene's real bands already occupy — frequently at the very band that established the convention. The better the device, the more likely its best output is taken. So misses concentrate exactly where the app is working well: plausible, idiomatic, scene-correct names by acts too small for a few-thousand-entry corpus. That is the argument for doing the trademark and streaming search even — especially — when a name comes back clear and sounds perfect. ## How the check works Four tiers, in descending confidence: - **exact** — the same string. - **normalised** — the same name after folding case, punctuation, diacritics, an ampersand and a leading "The". Periods are deleted and other punctuation becomes a space, so an initialism written with full stops matches the same initialism written without them; a spacing-insensitive comparison catches the rest. - **variant** — the same name with a plural or a spelling change (doubled letters collapsed, the usual z/s, ph/f, c/k, y/i swaps). - **near** — one or two characters away (length-scaled, disabled entirely for very short names), or containing a real act's whole name, or built on a word that essentially only one real act uses. The near tier is deliberately hard to trigger. **An over-strict checker is worse than no checker**: if a rule flags every two-word name containing an ordinary noun, users learn the warnings are noise and stop reading the one that matters. So a shared word only carries a near-match if it is genuinely *distinctive* — a coinage or proper noun rather than ordinary English. That judgement uses an **external dictionary**, not this app's own corpus frequency, because a corpus of a few thousand acts makes ordinary words like "weather", "ministry" or "basement" look rare. Tuning against corpus rarity measured the same skew twice and produced a 12.7% false-positive rate; deriving commonness externally brought it to near zero without losing detection. The stoplist gates the `near` tier only. The exact, normalised and variant tiers never consult it, so a word wrongly listed there can cost at most a soft warning and can never cause a real collision to be missed. ## How the naming works Twenty-two genre families are modelled as inventories of naming **devices** — rules of formation, each tagged with the semantic field it draws on and the structural shape it produces. A metal name and a twee-pop name differ structurally, not just lexically: one is frequently not in English and rarely takes a definite article, the other reaches deliberately for the small and the domestic. Three deliberate design choices: - **There are no example band names in the prompt.** A sample name is not an illustration, it is an instruction — its shape comes back in every output. Devices are described as rules of formation instead. - **The inventory is a vocabulary, not a checklist.** The model writes names first and labels afterward which device each turned out to use. Repeating a device is explicitly allowed. - **Every inventory holds more devices than the largest batch you can request** (batch sizes are 3, 5 and 7; the smallest pool is 10). "Use each device once" is impossible by arithmetic rather than by instruction, which removes the cheapest way for output to look varied while being one idea in N costumes. Variety is measured where it actually hides: openings are compared **two content words deep** (so "making a promise" and "making the promises" count as one opening), alongside structural frame and semantic-field spread. ## Input and output Input is a JSON object: `task` (`names` or `more`), `genre`, `mood`, `reference_acts[]`, `avoid_words[]`, `count` (3, 5 or 7), and `brief` carrying the device inventory. Output is a JSON object with `genre_read`, `expected_count`, `notes`, and `names[]` where each entry has `name`, `device`, `why_it_fits`, `on_a_shirt`, `taken_risk` and `taken_note`. The model states its own `taken_risk` per name. That claim is reconciled against the corpus check, and disagreements are surfaced: a name the model called low-risk that the corpus says is a real act is reported as a finding in its own right, because a confident wrong reassurance is what actually gets someone to order the shirts. ## Cost and access The naming runs on a metered model (`gpt-terra`) and requires sign-in. The genre conventions, the corpus check, the reference-act check and the variety measurement all run client-side and cost nothing — the standalone name checker needs no sign-in and no credits at all. API documentation: https://band-name-generator.skillsafe.ai/api.html ## Credit Derived from the *boredhumans* band-name-generator concept. Built on SkillSafe.