How it works
One search, a lot of parallel questions.
What we ask each platform, and what the four answers mean.
You type a name. We normalize it — strip the @, drop a URL down to its handle, take the spaces out of “Whisper Look” — and then ask 8 registries and 13 platforms the same question at once.
Every answer is streamed to the page the moment it lands, so the fast ones appear while the slow ones are still thinking. Nothing waits for the slowest platform.
The four answers
- Available
- Nothing is using the name, as far as the platform or registry will tell us. It is not a reservation — names go fast, and platforms hold some back without saying so.
- Taken
- Something is already there. A dormant account with no posts still holds its handle; there's no queue and no way to be next.
- Unknown
- We couldn't get a trustworthy answer. Usually the platform blocked the lookup, rate-limited us, or has no public way to ask at all. We'd rather say so than guess.
- Check failed
- Something broke on our side — a timeout, a network error. Worth trying again in a moment.
Domains
Registry RDAP via the IANA bootstrap, with a DNS fallback for registries that have none.
RDAP is the registries’ own answer to “is this registered?” — open, free and authoritative. Where a registry doesn’t run one, DNS can prove a domain is taken but never that it’s free, so a missing record becomes Unknown rather than good news.
Platforms
Each platform has its own adapter, because each platform behaves differently and changes on its own schedule. Here’s what each one actually does.
- InstagramPublic profile page status, with login-wall detection.
- TikTokPublic profile page, matched on the embedded profile payload.
- XPublic profile page status. X hides most answers; expect Unknown.
- YouTubePublic handle page status (youtube.com/@<handle>).
- ThreadsPublic profile page status (threads.com/@<handle>).
- RedditPublic profile JSON (reddit.com/user/<name>/about.json).
- GitHubDocumented public REST endpoint (api.github.com/users).
- TwitchOfficial Helix API when TWITCH_CLIENT_ID is configured; otherwise Unknown.
- PinterestPublic profile page status (pinterest.com/<name>).
- FacebookPublic vanity URL status, with login-wall detection.
- LinkedInNot checked: LinkedIn does not permit automated lookups.
- DiscordNot checked: Discord exposes no public username lookup.
- BlueskyPublic AT Protocol identity resolver (com.atproto.identity.resolveHandle).
What we won’t do
We only use publicly accessible methods. We don’t log in as anyone, don’t work around CAPTCHAs, don’t evade rate limits and don’t scrape with credentials. When that means a platform can’t be checked, the row says Unknown and gives you the link.
Freshness
Answers are cached for a few minutes so a repeated search doesn’t hammer anyone, and never long enough to go stale. Unknown results aren’t cached at all — they’re worth asking again.