Social Handles · Bulk Availability avatar

Social Handles · Bulk Availability

Pricing

from $3.10 / 1,000 handle checkeds

Go to Apify Store
Social Handles · Bulk Availability

Social Handles · Bulk Availability

See if your brand names are still free on Instagram, TikTok, X, YouTube, GitHub and 5 more — in one run. One row per handle, export-ready. No login. Free plan: 20 handles.

Pricing

from $3.10 / 1,000 handle checkeds

Rating

4.6

(2)

Developer

Corentin Robert

Corentin Robert

Maintained by Community

Actor stats

1

Bookmarked

234

Total users

22

Monthly active users

21 hours ago

Last modified

Share

Social Handle Checker

See if your brand names are still free on Instagram, TikTok, Facebook, Pinterest, YouTube, X, Threads, GitHub, Snapchat, Twitch, Reddit, Bluesky, Telegram, GitLab, and SoundCloud — in one run. One dataset row per handle (yes / no / error / not_checked), plus a profile URL when taken.

No login. No API key. No account on any of those networks.

Free plan: 20 handles per run. Paid: unlimited (your PPE budget).


Who is this for?

You are…Typical goalSuggested setup
Founder / product leadShortlist a company or product nameAll 15 platforms, 3–10 candidates
Brand / naming agencyClient pitch appendix5 names, all platforms — see Examples
DTC / creator launchCheck IG + TikTok firstRestrict Platforms to Instagram + TikTok
Devtools / gaming brandGitHub, Snapchat, TwitchSubset those three platforms
Trademark researcherInformal availability scanFull matrix, then verify critical names manually

What you get by default: one row per handle with yes/no per selected network. This is not a legal or trademark search.

When to narrow: pick Launch (Instagram + TikTok) for a first pass. Use All 15 for a client matrix. Use Fast when you do not need Instagram or Threads.


Quick start

  1. Open the Actor Input tab on Apify Console.
  2. List the handles you want to test (one per line, without @).
  3. Leave Coverage on Launch (Instagram + TikTok), or switch to All 15 / Fast.
  4. Click Start.
  5. Download JSON/CSV from the Dataset tab.

Standby lookup (HTTP)

Console Start is unchanged: fill Input, run, download the dataset.

Need one brand name (or a few) in n8n, Make, or your own app? Use the Standby tab hostname. Authenticate with Authorization: Bearer <APIFY_TOKEN> (or ?token=).

MethodPathRequestResponse
GET / POST/lookuphandle or handles (max 5). coverage default launch (Instagram + TikTok). Optional platforms when coverage=custom{ items, count, failed, budgetExhausted, cap }
GET/Header x-apify-container-server-readiness-probeOK

Hard cap: 5 handles per request. Bulk checks belong on Start. Same PPE as a dataset row (one event per handle, not per network). First byte timeout: 5 minutes.

curl -H "Authorization: Bearer $APIFY_TOKEN" \
"https://<user>--social-handle-checker.apify.actor/lookup?handle=mybrand"
curl -H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"handles":["mybrand","acme"],"coverage":"launch"}' \
"https://<user>--social-handle-checker.apify.actor/lookup"
{ "items": [{ "handle": "octocat", "available_github": "no", "url_github": "https://github.com/octocat" }], "count": 1, "cap": 5 }

Standby memory 512 MB, idle 60 s (Console → Actor → Standby).


Ready-made examples (published tasks)

ExampleBest for
Check startup names across 10 social platformsFounders — full matrix
Agency pitch — client handle availability scanAgency naming appendix
Instagram and TikTok handle check onlyFaster launch-channel check
Check GitHub Snapchat and Twitch usernamesDev / creator handles
Check brand names on X and YouTubeX + YouTube only
Facebook, Pinterest and ThreadsMeta-adjacent trio
Creator alias on 10 platformsStage name matrix
Fintech brand across socialsLegal / brand shortlist
TikTok and YouTube onlyVideo-first launch
Rebrand scan, 10 platformsAgency rebrand
Instagram and ThreadsSame @ on both
GitHub and X usernamesDev-brand pair

What does this Actor do?

Each handle is checked on the networks in your Coverage preset (or a custom list). You get yes (looks free), no (taken), error, or not_checked.

CoverageNetworks
LaunchInstagram, TikTok
All 15Instagram, TikTok, Facebook, Pinterest, YouTube, X, Threads, GitHub, Snapchat, Twitch, Reddit, Bluesky, Telegram, GitLab, SoundCloud
FastGitHub, YouTube, X, Snapchat, Twitch, Reddit, Bluesky, Telegram, GitLab, SoundCloud
CustomThe list you pick

This is not a legal or trademark search. LinkedIn is not included/in/{slug} is not the same vanity-handle game as Instagram/TikTok.

Some networks return login walls or ambiguous pages — those cells show error. Verify critical names by opening the profile URL yourself.


What data does it extract?

ColumnMeaning
handleCandidate string tested (without @).
available_{platform}yes = appears free, no = taken, error = check failed, not_checked = omitted from this run.
url_{platform}Public profile URL when that network is no. Empty when free, error, or not checked.
confidence_{platform}high or low for a yes/no result. Empty on error / not checked. Facebook and Twitch are always low (HTML heuristics). GitHub, Snapchat, X oEmbed, etc. are high.

Download results as JSON, CSV, Excel, or HTML from the Dataset tab.


Input

Console Coverage defaults to Launch (Instagram + TikTok). Saved tasks that only set platforms (no coverage) keep that list.

{
"handles": ["mybrand", "acme_corp"],
"coverage": "launch"
}

All 15 networks:

{
"handles": ["brandname", "brand_name"],
"coverage": "all"
}

Custom list:

{
"handles": ["brandname"],
"coverage": "custom",
"platforms": ["youtube", "twitter", "github"]
}

All input parameters

ParameterTypeDefaultDescription
handlesArrayHandles without @. Strings or { "handle": "..." }. Free plan: 20 / run.
coverageStringConsole: launchlaunch · all · fast · custom. Omit on API to keep legacy platforms behavior.
platformsArrayAll 15 if omitted and no coverageUsed when coverage is custom, or when coverage is omitted (API / old tasks).

API-only (not on the Console form): instagramCookies ({ "name", "value" }[]), proxyGroups.


Output example

[
{
"handle": "mybrand",
"available_instagram": "yes",
"url_instagram": "",
"confidence_instagram": "high",
"available_tiktok": "no",
"url_tiktok": "https://www.tiktok.com/@mybrand",
"confidence_tiktok": "high",
"available_facebook": "yes",
"url_facebook": "",
"confidence_facebook": "low",
"available_pinterest": "yes",
"url_pinterest": "",
"confidence_pinterest": "high",
"available_youtube": "no",
"url_youtube": "https://www.youtube.com/@mybrand",
"confidence_youtube": "high",
"available_twitter": "yes",
"url_twitter": "",
"confidence_twitter": "high",
"available_threads": "yes",
"url_threads": "",
"confidence_threads": "high",
"available_github": "yes",
"url_github": "",
"confidence_github": "high",
"available_snapchat": "no",
"url_snapchat": "https://story.snapchat.com/@mybrand",
"confidence_snapchat": "high",
"available_twitch": "yes",
"url_twitch": "",
"confidence_twitch": "low",
"available_reddit": "yes",
"url_reddit": "",
"confidence_reddit": "high",
"available_bluesky": "yes",
"url_bluesky": "",
"confidence_bluesky": "high",
"available_telegram": "no",
"url_telegram": "https://t.me/mybrand",
"confidence_telegram": "high",
"available_gitlab": "yes",
"url_gitlab": "",
"confidence_gitlab": "high",
"available_soundcloud": "yes",
"url_soundcloud": "",
"confidence_soundcloud": "high"
}
]

Run log (Apify Console)

While a cloud run is executing, open Storage → Key-value store → RUN_LOG for the same structured lines as the live log (banners, Mode: phases, indented progress). The default store also exposes Run log (live) in the Actor Output tab.


Local development

$npm install

Copy input.json.example to input.json and edit handles/platforms, then:

cp input.json storage/key_value_stores/default/INPUT.json
apify run

Example input.json:

{
"handles": [{ "handle": "testbrand" }],
"platforms": ["youtube", "twitter", "tiktok"]
}

Use apify run for local tests (not npm start alone — the CLI wires Apify storage and env).


How much does it cost to check social handles?

From 15 September 2026 one handle is $0.006 on Free (Bronze $0.00528 · Silver $0.00456 · Gold $0.00372). Until then, the table below is what you are billed.

ScenarioFREE until / from 15 SepBronze until / fromSilver until / fromGold until / from
20 handles (Try / free cap)$0.10 / $0.12$0.09 / $0.11$0.08 / $0.09$0.06 / $0.07
100 handles (paid)$0.50 / $0.60$0.44 / $0.53$0.38 / $0.46$0.31 / $0.37
1,000 handles (paid)$5.00 / $6.00$4.40 / $5.28$3.80 / $4.56$3.10 / $3.72

Free plan: 20 handles / run. Paid: unlimited (set a max charge per run if you want a spend cap). Gold / Platinum / Diamond stay one price for all three paid gold-and-up tiers.

Each billed result is one handle (one dataset row), not one network. Launch (IG + TikTok) and All 15 cost the same — Coverage only changes runtime and how complete the row is. No Actor-start fee.

ScenarioNotes
Launch, few namesUsually under 10 seconds.
All 15 + InstagramInstagram / Threads are slower on the cloud.
Ambiguous pagesShown as error — retry or open the profile yourself.

Use cases

  • Shortlist a brand name and see which @ handles are still free on major networks.
  • Give clients a one-click “social username matrix” before incorporation or campaign launch.
  • Periodically re-check a handle you want after a soft error (networks change HTML often).

This Actor only queries publicly reachable profile URLs and public APIs. Handles and availability signals may relate to personal data — use results in line with GDPR and local law. This is not a legal or trademark search. See Apify’s overview.


Also available

Instagram Username Availability Checker — Instagram-only bulk check when you do not need the 10-platform matrix.

FAQ

Why is a platform error?
Rate limits, bot challenges, timeouts, or HTML changes. Retry later or test that URL manually.

Is Instagram 100% accurate?
It reflects the signup attempt response; reserved or restricted names may still fail later in real signup.

How do I get help?
Use the Issues tab on the Actor page in the Apify store. For a bespoke scraper or integration, see Support below.

Does Standby replace Start?
No. Start = bulk dataset (all Coverage options). Standby = small JSON lookup (max 5 handles, default Launch). First HTTP byte timeout is 5 minutes.


Internals

How each network is probed (for operators). Buyers can ignore this.

PlatformSignal
Instagram / ThreadsPublic profile-info lookup; private accounts count as taken. Same username space on both.
TikTokPublic profile page markers in HTML.
FacebookPublic profile URL, mobile fallback if needed. Dataset confidence_facebook is low.
PinterestPublic RSS, then HTML.
YouTubeyoutube.com/@handle page.
XPublic oEmbed for twitter.com/{handle}.
GitHubPublic users API.
SnapchatPublic story CDN page.
TwitchPublic channel page title. Dataset confidence_twitch is low.
RedditPublic user/{handle}/about.json (residential proxy on Apify Cloud). User namespace, not r/ subreddits.
BlueskyPublic ATProto resolveHandle (handle.bsky.social unless you pass a full domain).
TelegramPublic t.me/{handle} (View vs Contact).
GitLabPublic users API ?username=.
SoundCloudPublic profile URL, HTTP 200 vs 404.

Support

For bug reports and general questions, use the Issues tab on the Actor page in the Apify Console.

Need a custom script or integration? Contact corentin@outreacher.fr for bespoke scraping or automation tailored to your workflow.

Ready? Paste your handle shortlist, pick Launch or All 15, and click Start.