Enter a name
The name you want to check, without the @.
Check one username on seven platforms at once.
What the answers mean
The name you want to check, without the @.
Each platform says whether a profile has it.
Taken, not found, or unclear. The same checks are one request each.
Check a name with no signup.
A profile means the name is taken. No profile means it looks free.
No profile means the name looks free.
A profile means someone has the name.
Tick the platforms you care about.
Each platform is the same profile request.
One lookup here asks each platform you tick: /v1/instagram/profile, /v1/tiktok/profile, /v1/twitter/profile, /v1/threads/profile, /v1/bluesky/profile, /v1/youtube/channel, /v1/github/user. Each is one request, 1 credit.
1curl -G "https://api.socialscrape.dev/v1/instagram/profile" \2 -H "x-api-key: $SOCIALSCRAPE_API_KEY" \3 --data-urlencode "handle=nasa"1import os2import requests34params = {5 "handle": "nasa",6}7res = requests.get(8 "https://api.socialscrape.dev/v1/instagram/profile",9 headers={"x-api-key": os.environ["SOCIALSCRAPE_API_KEY"]},10 params=params,11)12body = res.json()1314if body["ok"]:15 print(body["data"])16else:17 print(body["error"]["code"], body["error"]["message"])1const url = new URL("https://api.socialscrape.dev/v1/instagram/profile");2url.search = new URLSearchParams({3 "handle": "nasa"4}).toString();5const res = await fetch(url, {6 headers: { "x-api-key": process.env.SOCIALSCRAPE_API_KEY! },7});8const body = await res.json();910if (body.ok) {11 console.log(body.data);12} else {13 console.error(body.error.code, body.error.message);14}{ "ok": true, "credits_charged": 1, "credits_remaining": 4999, "cached": false, "cached_at": null, "request_id": "req_76e85ba4019f183364c53e3d", "data": { "object": "profile", "platform": "instagram", "id": "528817151", "handle": "nasa", "name": "NASA", "headline": null, "url": "https://www.instagram.com/nasa/", "kind": "unknown", "bio": "Making the seemingly impossible, possible. ✨", "avatar_url": "https://scontent-ord5-2.cdninstagram.com/v/t51.2885-19/29090066_159271188110124_1152068159029641216_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=1&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=Ca3wE...", "banner_url": null, "verified": true, "is_private": false, "external_url": "https://www.nasa.gov", "links": [ { "title": "NASA.gov Homepage", "url": "https://www.nasa.gov" }, { "title": "MAX POWER", "url": "https://www.nasa.gov/maxpower" }, { "title": "Roman Space Telescope Blog", "url": "https://science.nasa.gov/blogs/roman/" } ], "location": null, "category": null, "created_at": null, "stats": { "followers": 104360746, "following": 90, "posts": null, "likes": null, "views": null }, "extra": { "has_reels": true, "is_memorialized": false, "is_unpublished": false, "latest_story_at": "2026-10-29T20:36:47Z", "relay_id": "17841401474538262" } }, "cursor": null, "has_more": null }
The platform has no profile with that name right now. Names that are reserved, banned or held by a suspended account can still be blocked when you try to register.
So you can see a name's whole footprint at once. Untick the ones you do not need; each platform checked is one lookup against your hourly allowance.
A bare name is checked as name.bsky.social. To check a custom domain handle, use the Bluesky profile viewer.
Yes. No account and no card. Each visitor gets a limited number of lookups an hour, so it stays free for everyone.
Send GET /v1/instagram/profile with your key in the x-api-key header. A request costs 1 credit. A repeat of something fetched recently costs 0 credits, and failed requests are free. See the reference.