146 lines
6.9 KiB
Markdown
146 lines
6.9 KiB
Markdown
# Domain Availability Research
|
||
|
||
**When to use:** Before registering a domain — research which names are available, check WHOIS/DNS, generate creative alternatives, and compare pricing.
|
||
|
||
---
|
||
|
||
## Workflow: 3-Prong Validation
|
||
|
||
Do NOT rely on a single check. The registry WHOIS database can lag or return stale data. Always run all three checks:
|
||
|
||
### Check 1 — VeriSign WHOIS (authoritative for .com/.net/.edu)
|
||
|
||
```bash
|
||
whois <domain> 2>&1 | grep "No match for domain"
|
||
```
|
||
|
||
- **Available:** `No match for domain "EXAMPLE.COM"` — domain is not registered
|
||
- **Taken:** Returns registry domain ID, creation date, expiry, name servers
|
||
- **Rate note:** On fresh installs, `apt-get install -y whois` first
|
||
- **Limitation:** Only covers .com, .net, .edu domains at the VeriSign registry level. For other TLDs (.io, .org, .co, .app, etc.), use a registrar's check endpoint or DNS lookup instead.
|
||
|
||
### Check 2 — DNS NXDOMAIN verification
|
||
|
||
```bash
|
||
nslookup <domain> 2>&1 | grep "NXDOMAIN"
|
||
```
|
||
|
||
- **Available:** Returns `NXDOMAIN` — no DNS records exist
|
||
- **Taken:** Returns one or more IP addresses
|
||
- Works for ANY TLD, not just .com
|
||
- A DNS lookup returning `NXDOMAIN` but WHOIS showing "No match" confirms availability from two angles
|
||
|
||
### Check 3 — HTTP redirect/resolve check
|
||
|
||
```bash
|
||
curl -sk -o /dev/null -w '%{http_code} %{redirect_url}' https://<domain> 2>&1
|
||
```
|
||
|
||
- Sometimes a domain is registered but parked (HTTP 200/302 lander page) — means it's taken but possibly for sale
|
||
- NXDOMAIN from Check 2 + timeout/slow from Check 3 = definitely available
|
||
- A fast 200/302 response means someone owns it or a registrar has a landing page up
|
||
|
||
### Important: DNS vs WHOIS discrepancies
|
||
|
||
A domain can show "No match" in WHOIS yet resolve in DNS. This happens with:
|
||
- Very recent registrations (WHOIS database hasn't propagated yet — up to 24h lag)
|
||
- Domain was just registered but the WHOIS caching layer hasn't refreshed
|
||
- **Resolution:** If WHOIS says "No match" but DNS resolves, the domain was likely registered within the last few hours. Mark as "likely taken — verify again in 24h."
|
||
|
||
---
|
||
|
||
## Generating Creative Domain Names
|
||
|
||
### Formula patterns
|
||
|
||
| Pattern | Example | Why It Works |
|
||
|---------|---------|-------------|
|
||
| `{theme}{keyword}.com` | `sharkfantasy.com` | Direct, brandable |
|
||
| `{theme}ff.com` | `sharkattackff.com` | "FF" = fantasy football shorthand |
|
||
| `{theme}draft.com` | `jawsdraft.com` | Highlights the draft mechanic |
|
||
| `{theme}league.com` | `chumleague.com` | Wordplay: chum = shark bait |
|
||
| `{theme}szn.com` | `jawsszn.com` | Sports seasons slang (SZN) |
|
||
| `{wordplay}league.com` | `toothyleague.com` | Fun, playful, memorable |
|
||
| `{compound}league.com` | `finomenalleague.com` | "Fin" + phenomenal |
|
||
| `{anatomy}picks.com` | `dorsalpicks.com` | Shark anatomy + draft picks |
|
||
| `{slang}league.com` | `sharkattackseason.com` | "Season" = sports league |
|
||
| `{chum-themed}{keyword}.com` | `chumdraft.com`, `predapick.com` | Short, wordplay, edgy |
|
||
|
||
### Criteria for good names
|
||
- ≤15 characters ideal (fits URLs, social handles, easy to type)
|
||
- No hyphens if possible (people forget them, look spammy)
|
||
- Avoid numbers unless part of brand (e.g., Web3 names with 3)
|
||
- Easy to spell after hearing it once (the "radio test")
|
||
- Avoid trademarked terms (e.g., "Feeding Frenzy" — EA owns it)
|
||
- Avoid names that sound like existing products or confuse the brand
|
||
|
||
---
|
||
|
||
## Registrar Pricing Reference (as of Jul 2026)
|
||
|
||
| Registrar | .com (1yr) | Notes |
|
||
|-----------|-----------|-------|
|
||
| **Cloudflare** | **$10.46** | At-cost, no markup — best value. Registration/renewal/transfer all same price. |
|
||
| Namecheap | ~$10–$14 | Often has first-year promos, reliable API |
|
||
| Porkbun | ~$10–$12 | Good mid-tier, simple interface |
|
||
| GoDaddy | ~$12–$18 | Renewals higher; good for premium/auction domains |
|
||
| HugeDomains | Premium | Marketplace for already-registered domains, often $1K+ |
|
||
|
||
**Best practice:** Use Cloudflare Registrar for new registrations if the site will use Cloudflare DNS anyway. If another registrar, transfer to Cloudflare later.
|
||
|
||
### Premium/aftermarket domains
|
||
- `fantasyfrenzy.com` → HugeDomains (likely $1K+)
|
||
- `apexshark.com` → GoDaddy Auctions ($2,500 or $834/mo lease-to-own)
|
||
- Before pursuing a premium domain, check if an available creative alternative exists first (usually does at $10.46)
|
||
|
||
---
|
||
|
||
## Venue-Specific Domain Availability Checks
|
||
|
||
### Cloudflare Registrar API (requires token with Registrar Admin permission)
|
||
|
||
```bash
|
||
ACCT_ID=$(curl -s "https://api.cloudflare.com/client/v4/accounts" \
|
||
-H "Authorization: Bearer $TOKEN" | python3 -c "import sys,json;print(json.load(sys.stdin).get('result',[{}])[0].get('id',''))")
|
||
|
||
curl -s "https://api.cloudflare.com/client/v4/accounts/$ACCT_ID/registrar/domains/example.com/check" \
|
||
-H "Authorization: Bearer $TOKEN"
|
||
```
|
||
|
||
Returns: `available`, `can_register`, `premium`, `supported_tld`, `fees.registration_fee`, `fees.renewal_fee`, `fees.transfer_fee`.
|
||
|
||
**Pitfalls:**
|
||
- This is GET, not POST. POST returns "Page not found"
|
||
- Domain name goes in URL path, not as query param or request body
|
||
- Requires `Account → Registrar → Admin` permission token (standard DNS-only token won't work)
|
||
- See `cloudflare-dns-and-domains` umbrella skill for full token setup
|
||
|
||
---
|
||
|
||
## Deliverable Format
|
||
|
||
After researching, compile a ranked report with:
|
||
|
||
1. **SECTION A: Initial List** — the domains the user asked about, each with status + note
|
||
2. **SECTION B: Creative Alternatives** — original ideas generated by the research, checked for availability
|
||
3. **SECTION C: Top Recommendations** — 3-5 ranked picks with rationale
|
||
4. **SECTION D: Strategy** — which to register now vs. consider vs. skip
|
||
5. **Pricing** — Cloudflare at-cost as baseline ($10.46/.com), note premiums
|
||
|
||
### Rating scale
|
||
- ⭐⭐⭐⭐⭐ = Short (≤12 chars), brandable, descriptive, no issues
|
||
- ⭐⭐⭐⭐ = Good option, slightly longer or less obvious
|
||
- ⭐⭐⭐ = Decent but long or less catchy
|
||
- ⭐⭐ = Functional but not ideal
|
||
- ⭐ = Skip (taken, premium, confusing)
|
||
|
||
---
|
||
|
||
## Pitfalls
|
||
|
||
- **WHOIS not installed** — on minimal Linux installs, `whois` may not be present. Run `apt-get install -y whois` first.
|
||
- **WHOIS rate limits** — VeriSign applies rate limiting at high query volumes (exact threshold undocumented). If queries start failing with connection errors, space them out or use DNS as a lighter alternative. For 20+ domains, batch with a loop + 0.5s delay.
|
||
- **Premium domain price shock** — a "taken" domain at a marketplace like GoDaddy or HugeDomains can cost $500-$5,000+. Always check creative alternatives first at $10.46.
|
||
- **"No match" with DNS resolution** — domain was likely registered in the last few hours. Cross-check again in 24h.
|
||
- **New TLDs (.app, .dev, .io, etc.)** — WHOIS check via VeriSign only covers .com/.net/.edu. For other TLDs, use DNS NXDOMAIN + Cloudflare check API + registrar's own lookup. Many new TLDs require HSTS preloading (.app, .dev) which can cause redirect issues with http-only test pages.
|