Social Handle Checker · IG, TikTok, FB, Pinterest, Youtube, X
Pricing
$10.00/month + usage
Social Handle Checker · IG, TikTok, FB, Pinterest, Youtube, X
Check handle availability across Instagram, TikTok, Facebook, Pinterest, YouTube (@), and X (Twitter) in one run. Built for founders and agencies picking a brand name. Export JSON/CSV from the dataset.
Pricing
$10.00/month + usage
Rating
1.0
(1)
Developer
Corentin Robert
Actor stats
0
Bookmarked
37
Total users
5
Monthly active users
13 days ago
Last modified
Categories
Share
Social Handle Checker
Bulk-check username availability across Instagram, TikTok, Facebook, Pinterest, YouTube (@handle), X (Twitter), and Threads in a single run. Input: a list of candidate handles (no @). Output: one dataset row per handle with yes / no / error / not_checked per platform — ideal when you are naming a company, product, or personal brand.
Built for: brand naming · pre-launch social audits · agency pitch research · trademark-style availability scans (informal, not legal advice)
What does this Actor do?
The Actor fans out each handle across the platforms you select (default: all seven). It uses:
| Platform | Method (summary) |
|---|---|
Meta web signup attempt API (same family of checks as the public signup flow) with rotating sessions and Apify residential proxies on the cloud. | |
| TikTok | Public profile URL + ProfilePage / status signals in HTML. |
facebook.com/{handle} — browser-like headers, www + m.facebook.com fallbacks; on Apify, requests go through residential proxy to reduce HTTP 400 blocks. | |
Public RSS pinterest.com/{handle}/feed.rss (200 + XML = taken; 404 = free), then HTML fallback | |
| YouTube | youtube.com/@{handle} |
| X (Twitter) | Public oEmbed API (publish.twitter.com/oembed?url=https://twitter.com/{handle}) — 200 + embed HTML if the profile exists, 404 if not. Does not scrape the JS-heavy x.com page. |
| Threads | Instagram’s public web_profile_info API on i.instagram.com (JSON 200 with a user object = taken; 404 = free). Meta uses the same @username for Instagram and Threads, so this matches how Threads reserves names in practice. |
Instagram is the most rate-limit sensitive. The other platforms use GET requests (no browser). Some sites return login walls or soft 404s — rows may show error; verify critical names manually.
LinkedIn is intentionally not included — public /in/{slug} URLs are not the same kind of vanity “handle” game as Instagram/TikTok; naming rules and availability are a poor fit for this Actor.
What data does it extract?
| Column | Meaning |
|---|---|
handle | Candidate string tested (without @). |
available_instagram | yes = appears free, no = taken, error = check failed, not_checked = platform omitted from run. |
available_tiktok | Same scale. |
available_facebook | Same scale (Facebook Page-style URL). |
available_pinterest | Same scale. |
available_youtube | Same scale (@handle). |
available_twitter | Same scale (X). |
available_threads | Same scale (Threads — inferred via Instagram username lookup). |
Download results as JSON, CSV, Excel, or HTML from the Dataset tab.
Input
Default: all platforms. Restrict platforms to save time and egress.
{"handles": [{ "handle": "mybrand" },{ "handle": "acme_corp" }],"platforms": ["instagram", "tiktok", "facebook", "pinterest", "youtube", "twitter", "threads"]}
Instagram + TikTok only (faster on small lists):
{"handles": ["brandname", "brand_name"],"platforms": ["instagram", "tiktok"]}
All input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
handles | Array | — | Handles without @. Items may be strings or { "handle": "..." }. |
platforms | Array | All 7 | Subset of: instagram, tiktok, facebook, pinterest, youtube, twitter, threads. |
On Apify Cloud, Instagram and Threads checks use the residential proxy group by default; no extra input is required.
API-only (not shown in the Console input form): If you start runs via the API, you can still pass instagramCookies (array of { "name", "value" }) or proxyGroups (defaults to ["RESIDENTIAL"] when omitted).
Output example
[{"handle": "mybrand","available_instagram": "yes","available_tiktok": "no","available_facebook": "yes","available_pinterest": "yes","available_youtube": "no","available_twitter": "yes","available_threads": "yes"}]
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.
How to use
- Open the Actor Input tab on Apify Console.
- List the handles you want to test (one per line, without
@). - Optionally narrow Platforms to check.
- Click Start.
- Open the Dataset tab and download JSON/CSV when the run finishes.
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.jsonapify 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).
Performance and cost
| Scenario | Notes |
|---|---|
| Few handles, HTTP-only platforms | Usually seconds. |
| Many handles + Instagram | Dominated by Instagram API + residential proxy usage; tune concurrency is internal — prefer smaller batches if you hit rate limits. |
| Cost | Apify compute units and proxy traffic (Instagram). Check current Apify pricing. |
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).
Legal / compliance
Only publicly reachable URLs and endpoints are queried. Handles and availability signals may relate to personal data on some platforms — use results in line with GDPR and local law. This Actor is not a legal or trademark search. For scraping legality context, see Apify’s blog.
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.
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, choose platforms, and click Start.
