How the checker works
Two lanes. If a registry or platform publishes an official way to look a name up, our server asks it. If it doesn't, or its terms forbid automated lookups, you get a link and you look yourself. We never scrape a profile page.
Lane 1: automatic checks
These run on our server (a Cloudflare Worker) when you press Check. Each request names us in its User-Agent header so the platform knows who is asking. Answers are cached for 10 minutes so repeat searches don't hit the platform again.
| What | How we ask | Official source |
|---|---|---|
| Domains: .com, .net, .org, .app, .ai, .dev, .xyz, .shop, .store, .online, .tech | RDAP, the protocol ICANN calls "the replacement for the WHOIS protocol." We find each registry's server in the IANA bootstrap file, then ask it for the domain. No record (HTTP 404) shows as "looks free." | ICANN on RDAP; IANA bootstrap; RFC 9224 |
| Domains: .io, .co, .me, .us | Not automatic. When we checked the IANA file on 2026-10-02, these registries had no RDAP server listed, so we link to a registrar search instead. | IANA dns.json |
| Bluesky | Resolves name.bsky.social to an account ID with the AT Protocol's handle resolution. | AT Protocol handle spec |
| Mastodon | The public account lookup API on mastodon.social, mastodon.online and mstdn.social. Mastodon names belong to one server, so a name can be free on one and taken on another. | Mastodon API docs |
| GitHub | The public "get a user" endpoint, which covers people and organizations. GitHub allows 60 anonymous requests an hour, so a busy hour can return "no answer." | GitHub REST docs; rate limits |
| GitLab | The users API filtered by exact username. Group names share the same web addresses and aren't covered. | GitLab users API |
| npm and PyPI | Each package registry's public JSON API. A missing package means the name isn't in use there. | npm registry API; PyPI JSON API |
| YouTube (coming soon) | The YouTube Data API's channel lookup by handle. Needs an API key; until then you get a link. When it's on, YouTube's Terms of Service apply to that check. | YouTube Data API; YouTube Terms |
| Twitch (coming soon) | The Helix "Get Users" endpoint with an app token. | Twitch API reference |
| Steam (coming soon) | The Steam Web API's ResolveVanityURL, which says whether a custom profile URL is in use. | Steam Web API |
Lane 2: links you click
For these, our server sends nothing. The page builds the profile address (for example instagram.com/yourname) and you open it. We chose this because of what each platform's own terms say:
- Instagram, Facebook, Threads: you "may not access or collect data from our Products using automated means (without our prior permission)" (Meta Terms of Service, 3.2).
- TikTok: the terms forbid using "any automated system or software" to extract data "except as approved in writing" (TikTok Terms of Service, 3.4).
- LinkedIn: the user agreement bans scripts or robots that "scrape or copy the Services, including profiles" (LinkedIn User Agreement, 8.2).
- Reddit: commercial use of the Data API needs Reddit's written approval (Reddit Data API Terms). We don't have it.
- X: automated username lookups need a paid API plan. We don't have one.
- Medium: its docs say "The Medium API is no longer supported" (Medium API docs).
- Product Hunt: the API docs say it "must not be used for commercial purposes" (Product Hunt API).
- Pinterest, Snapchat, Substack, Telegram: no public API answers "is this name free" for a website like ours, so a link is the honest option.
- Discord: not listed. Discord usernames are looked up by account ID, not by name (Discord user docs), so there's nothing reliable to check.
When you open a link: a profile page means the name is in use. A "not found" or "isn't available" page usually means no public account has it, but a private, suspended or deleted account can still hold a name. The sign-up screen is the final answer.
Trademarks
The USPTO's official APIs that we found look a trademark up by its serial or registration number, not by a word you type, so they can't answer "is anyone using this name." Until there is an official keyword search we can use, the checker gives you a link to the free USPTO Trademark Search and asks what you found. The SBA's guide to naming a business recommends the same search (SBA, choose your business name). This is a first look, not legal advice; check with a trademark attorney before you file.
How the Brand Name Score is calculated
The score adds up seven parts to a maximum of 100. Nothing is hidden; the same table appears under every result.
| Part | Weight | How points are given |
|---|---|---|
| .com domain | 25 | All points if the registry has no record of the .com; none if it's registered or we couldn't check. |
| Other domain endings | 10 | Share of the other endings we could check that look free. Endings we couldn't check are left out, not counted against you. |
| Handles | 25 | Share of the automatic platforms that returned a clear answer and showed no account. Click-to-check platforms aren't counted, because we don't see what you find there. |
| Trademark search (your answer) | 20 | All points for "no same or similar marks," half for "similar marks in different kinds of business," none for "a same or similar mark in my kind of business" or "haven't searched yet." |
| Length | 8 | All points for 4 to 10 characters; 5 points for 2 to 3 or 11 to 14; 2 points for 15 to 20; none beyond that. |
| Spelling | 6 | Starts at 6; minus 2 for each of: a digit, a hyphen/dot/underscore, three same letters in a row, several letters with more than one common spelling (ph, ck, qu, x, z). |
| Easy to say | 6 | Starts at 6; minus 3 for no vowels or very few vowels for the length, and minus 3 for four or more consonants in a row. |
Bands: 75 and up "strong position," 50 to 74 "workable, with gaps," under 50 "hard to claim as it stands." The weights are our judgment of what makes a name hard to use: losing the .com or a conflicting trademark costs the most to fix later, so they carry the most weight. Length, spelling and sound checks are rough letter rules, not linguistics; say the name out loud to a few people too.
What we keep
Very little. The short version: no accounts, no tracking scripts, no log of names. Results sit in a 10-minute cache, then expire. Details are on the privacy page.