Social media username checker
Check one username on seven platforms at once.
What the answers mean
- PlatformTakenA public profile has this name. You see who.
- PlatformNot foundNo public profile. It looks free.
- PlatformUnclearThe platform did not answer. Try again.
Free, no signup. A limited number of lookups per visitor each hour. Public data only.
How it works
Each platform is asked whether a public profile with that name exists. If the platform says no, the name shows as free. If a profile comes back, it shows as taken, with the account's name and followers. Platforms also reserve or ban names without showing a profile, so a free result is a good sign, not a guarantee.
Use this in your app
This tool calls GET /v1/instagram/profile. See the reference, or get early access for a key.
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.
curl -G "https://api.socialscrape.io/v1/instagram/profile" \
-H "x-api-key: $SOCIALSCRAPE_API_KEY" \
--data-urlencode "handle=nasa"import os
import requests
params = {
"handle": "nasa",
}
res = requests.get(
"https://api.socialscrape.io/v1/instagram/profile",
headers={"x-api-key": os.environ["SOCIALSCRAPE_API_KEY"]},
params=params,
)
body = res.json()
if body["ok"]:
print(body["data"])
else:
print(body["error"]["code"], body["error"]["message"])const url = new URL("https://api.socialscrape.io/v1/instagram/profile");
url.search = new URLSearchParams({
"handle": "nasa"
}).toString();
const res = await fetch(url, {
headers: { "x-api-key": process.env.SOCIALSCRAPE_API_KEY! },
});
const body = await res.json();
if (body.ok) {
console.log(body.data);
} else {
console.error(body.error.code, body.error.message);
}{
"nodes": [
{
"name": "SocialScrape Instagram profile",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
0,
0
],
"parameters": {
"method": "GET",
"url": "https://api.socialscrape.io/v1/instagram/profile",
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "handle",
"value": "nasa"
}
]
},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "x-api-key",
"value": "={{ $env.SOCIALSCRAPE_API_KEY }}"
}
]
}
}
}
],
"connections": {}
}Questions
What does Not found mean?
The platform has no public 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.
Why does it check seven platforms?
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.
Bluesky needs a domain.
A bare name is checked as name.bsky.social. To check a custom domain handle, use the Bluesky profile viewer.
Is this tool free?
Yes. No account and no card. Each visitor gets a limited number of lookups an hour, so it stays free for everyone.
How do I get this data in my own app?
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.