Domain Name Brainstormer
Generate and score candidate brand / domain names from seed words using common naming patterns. The script does not check live registration — it produces candidates fast so you can spend your time evaluating the best ones.
Table of Contents
Keywords
domain, domain name, naming, brand naming, product name, company name, .com, brainstorm, naming brainstorm, brand identity, naming strategy
Clarify First
Before generating names, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
Quick Start
Generate 200 Candidates in 30 Seconds
python scripts/name_generator.py "data,insight,signal" --count 200
Then:
- Eliminate anything > 12 characters
- Eliminate anything that's hard to spell after hearing it once
- Eliminate anything that sounds like a competitor
- Take the top 10-15 to a registrar (manually) to check availability across .com / .ai / .io / .co
Core Workflows
Workflow 1: Seed-Word Brainstorm
Goal: Convert a few keywords describing the product into 100+ ranked candidates.
Steps:
- List 3-7 seed words that describe the product, value, or feeling
- Run:
python scripts/name_generator.py "seed1,seed2,seed3" --count 200
- Sort the output by score (highest first)
- Apply the elimination filter from
references/naming_framework.md
- Pick a shortlist of 10-15 to manually check for trademark and domain availability
Expected Output: Ranked list of candidates with scores, classified by pattern (vowel-drop, blend, prefix-suffix, TLD-as-suffix).
Time Estimate: 5-10 minutes.
Workflow 2: Pattern-Specific Generation
Goal: Get more of one specific pattern (e.g., only blends, or only TLD-as-suffix names).
Steps:
- Run with pattern filter:
python scripts/name_generator.py "fast,ship" --pattern blend --count 100
- Available patterns:
vowel_drop, prefix_suffix, blend, tld_suffix, repeat, all
- Iterate seeds until you have 20+ candidates worth taking to availability checks
Expected Output: Pattern-specific list.
Time Estimate: 5 minutes per pattern variation.
Workflow 3: Trademark / Availability Pre-Check
Goal: Avoid wasting energy on names that are obviously taken.
Steps:
- Take the shortlist from Workflow 1 or 2
- Manually check each on:
- A domain registrar (Namecheap, Cloudflare, Porkbun) for .com / .ai / .io / .co
- The USPTO TESS database (or your jurisdiction's trademark office) for live trademarks in the relevant class
- A regular Google search for existing usage
- Drop anything with a live trademark in the same product class, an active product on a similar domain, or a trademarked .com that you do not own
The script does not automate registrar lookups — those need real network calls and rate-limited APIs. Doing this step manually for a 10-name shortlist takes 10-15 minutes.
Tools
name_generator.py
Generates candidate names by applying naming patterns to seed words and scores each on length, pronounceability, and uniqueness.
# Default: 100 candidates, all patterns
python scripts/name_generator.py "data,signal,insight"
# More results
python scripts/name_generator.py "data,signal" --count 300
# One pattern only
python scripts/name_generator.py "data,signal" --pattern vowel_drop
# JSON for programmatic use
python scripts/name_generator.py "data,signal" --json
Patterns implemented:
vowel_drop — Remove inner vowels: "data" → "dta", "insight" → "nsght"
prefix_suffix — Add common naming prefixes/suffixes: "ly", "ify", "io", "lab", "labs", "hq", "co", "stack", "kit", "app"
blend — Combine two seeds: "data" + "signal" → "dasignal", "datignal"
tld_suffix — Treat TLD as part of the name: "send.fast" reads as "sendfast"
repeat — Doubling pattern: "data" → "datadata"
Score (0-100) factors:
- Length 5-10 chars scores highest
- Pronounceability via consonant-vowel ratio
- Penalty for common-word collisions
- Penalty for hyphens or numbers (these dilute brand)
Reference Guides
references/naming_framework.md — Why names matter, the elimination filter, naming-pattern playbook, common pitfalls
Best Practices
- Don't pre-commit to .com. A
.io or .ai is fine for most B2B products in 2026; .com matters less than it did a decade ago.
- Say it out loud. If you can't tell someone the domain in a noisy bar and have them spell it correctly, drop it.
- Avoid naming-collisions. A "DataLoop" in your space and a "DataLoop" in adjacent SaaS will cause confusion forever.
- Don't pick the first one. Generate 200, filter to 30, shortlist 10, sit on the shortlist for 24 hours. The one that still feels right after sleeping is the one.
- Trademark before launching. A great name with a trademark conflict will cost you a rebrand later.
Integration Points
- Pairs with
marketing/brand-strategist/ for brand-narrative work
- Pairs with
marketing/landing-page-generator/ for messaging once a name is chosen
- Used by
c-level-advisor/ workflows during company / product launches
1---2name: domain-name-brainstormer3description: Generate and score candidate brand, product, and domain names for memorability and pronounceability. Use when naming a new product, company, or feature, brainstorming brand names, or finding an available .com.4license: MIT + Commons Clause5---6
7# Domain Name Brainstormer
8
9Generate and score candidate brand / domain names from seed words using common naming patterns. The script does not check live registration — it produces candidates fast so you can spend your time evaluating the best ones.
10
11---
12
13## Table of Contents
14
15- [Keywords](#keywords)
16- [Quick Start](#quick-start)
17- [Core Workflows](#core-workflows)
18- [Tools](#tools)
19- [Reference Guides](#reference-guides)
20- [Best Practices](#best-practices)
21
22---
23
24## Keywords
25
26domain, domain name, naming, brand naming, product name, company name, .com, brainstorm, naming brainstorm, brand identity, naming strategy
27
28---
29
30## Clarify First
31
32Before generating names, confirm these inputs. If any is unknown or vague, ASK — do not assume:
33
34- [ ] **Seed words** — 3-7 words describing the product, value, or feeling; every candidate is built from these
35- [ ] **Brand tone** — serious/technical vs playful/coined steers which patterns (blend, vowel-drop, prefix-suffix) to favor
36- [ ] **TLD preference** — .com vs .ai/.io/.co changes the shortlist and whether the `tld_suffix` pattern applies
37
38Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
39
40---
41
42## Quick Start
43
44### Generate 200 Candidates in 30 Seconds
45
46```bash
47python scripts/name_generator.py "data,insight,signal" --count 200
48```
49
50Then:
511. Eliminate anything > 12 characters
522. Eliminate anything that's hard to spell after hearing it once
533. Eliminate anything that sounds like a competitor
544. Take the top 10-15 to a registrar (manually) to check availability across .com / .ai / .io / .co
55
56---
57
58## Core Workflows
59
60### Workflow 1: Seed-Word Brainstorm
61
62**Goal:** Convert a few keywords describing the product into 100+ ranked candidates.
63
64**Steps:**
651. List 3-7 seed words that describe the product, value, or feeling
662. Run: `python scripts/name_generator.py "seed1,seed2,seed3" --count 200`
673. Sort the output by score (highest first)
684. Apply the elimination filter from `references/naming_framework.md`
695. Pick a shortlist of 10-15 to manually check for trademark and domain availability
70
71**Expected Output:** Ranked list of candidates with scores, classified by pattern (vowel-drop, blend, prefix-suffix, TLD-as-suffix).
72
73**Time Estimate:** 5-10 minutes.
74
75### Workflow 2: Pattern-Specific Generation
76
77**Goal:** Get more of one specific pattern (e.g., only blends, or only TLD-as-suffix names).
78
79**Steps:**
801. Run with pattern filter: `python scripts/name_generator.py "fast,ship" --pattern blend --count 100`
812. Available patterns: `vowel_drop`, `prefix_suffix`, `blend`, `tld_suffix`, `repeat`, `all`
823. Iterate seeds until you have 20+ candidates worth taking to availability checks
83
84**Expected Output:** Pattern-specific list.
85
86**Time Estimate:** 5 minutes per pattern variation.
87
88### Workflow 3: Trademark / Availability Pre-Check
89
90**Goal:** Avoid wasting energy on names that are obviously taken.
91
92**Steps:**
931. Take the shortlist from Workflow 1 or 2
942. **Manually** check each on:
95 - A domain registrar (Namecheap, Cloudflare, Porkbun) for .com / .ai / .io / .co
96 - The USPTO TESS database (or your jurisdiction's trademark office) for live trademarks in the relevant class
97 - A regular Google search for existing usage
983. Drop anything with a live trademark in the same product class, an active product on a similar domain, or a trademarked .com that you do not own
99
100> The script does **not** automate registrar lookups — those need real network calls and rate-limited APIs. Doing this step manually for a 10-name shortlist takes 10-15 minutes.
101
102---
103
104## Tools
105
106### name_generator.py
107
108Generates candidate names by applying naming patterns to seed words and scores each on length, pronounceability, and uniqueness.
109
110```bash
111# Default: 100 candidates, all patterns
112python scripts/name_generator.py "data,signal,insight"
113
114# More results
115python scripts/name_generator.py "data,signal" --count 300
116
117# One pattern only
118python scripts/name_generator.py "data,signal" --pattern vowel_drop
119
120# JSON for programmatic use
121python scripts/name_generator.py "data,signal" --json
122```
123
124**Patterns implemented:**
125- `vowel_drop` — Remove inner vowels: "data" → "dta", "insight" → "nsght"
126- `prefix_suffix` — Add common naming prefixes/suffixes: "ly", "ify", "io", "lab", "labs", "hq", "co", "stack", "kit", "app"
127- `blend` — Combine two seeds: "data" + "signal" → "dasignal", "datignal"
128- `tld_suffix` — Treat TLD as part of the name: "send.fast" reads as "sendfast"
129- `repeat` — Doubling pattern: "data" → "datadata"
130
131**Score (0-100) factors:**
132- Length 5-10 chars scores highest
133- Pronounceability via consonant-vowel ratio
134- Penalty for common-word collisions
135- Penalty for hyphens or numbers (these dilute brand)
136
137---
138
139## Reference Guides
140
141- **`references/naming_framework.md`** — Why names matter, the elimination filter, naming-pattern playbook, common pitfalls
142
143---
144
145## Best Practices
146
147- **Don't pre-commit to .com.** A `.io` or `.ai` is fine for most B2B products in 2026; `.com` matters less than it did a decade ago.
148- **Say it out loud.** If you can't tell someone the domain in a noisy bar and have them spell it correctly, drop it.
149- **Avoid naming-collisions.** A "DataLoop" in your space and a "DataLoop" in adjacent SaaS will cause confusion forever.
150- **Don't pick the first one.** Generate 200, filter to 30, shortlist 10, sit on the shortlist for 24 hours. The one that still feels right after sleeping is the one.
151- **Trademark before launching.** A great name with a trademark conflict will cost you a rebrand later.
152
153---
154
155## Integration Points
156
157- Pairs with `marketing/brand-strategist/` for brand-narrative work
158- Pairs with `marketing/landing-page-generator/` for messaging once a name is chosen
159- Used by `c-level-advisor/` workflows during company / product launches