Username Availability Checker avatar

Username Availability Checker

Pricing

$0.45 / 1,000 availability checks

Go to Apify Store
Username Availability Checker

Username Availability Checker

Check usernames across supported public platforms in one run. Get per-platform available, taken, invalid, or unresolved results with profile links and reasons when available.

Pricing

$0.45 / 1,000 availability checks

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

18

Total users

3

Monthly active users

16 days ago

Last modified

Share

🔎 Check username availability across public platforms

Founders, marketers, creators, agencies, and developers can use Username Availability Checker to test candidate usernames or handles across supported public platforms. It returns one row per candidate with at least one valid source answer, a normalized handle, and per-platform available, taken, invalid, or unresolved results, plus profile links and reasons when available. Use the rows to compare names before choosing a brand, creator, or product handle.

📊 Per-platform username results

The default dataset has one row for each candidate with at least one valid source answer. Each row keeps the submitted candidate beside its normalized handle and the platform results. A platform result reports available, taken, invalid, or unresolved. available and taken are reported only when the source signal is definitive. A public profile link or a reason is included when the source provides one. Failed source checks are left out of the rows and scraped totals.

Returned data

Use the rows to see which platforms have a candidate, which checks need review, and which submitted values were rejected by a platform's username rules. An unresolved result is not treated as proof that a username is available or taken.

▶️ Check many handles in one run

  1. Set Check usernames on to Selected platforms or Full catalog.
  2. If you choose Selected platforms, pick one or more values in Platforms.
  3. Add one or more usernames or handles to Usernames or handles. You can also add a full Gmail address such as name@gmail.com.
  4. Start the run and open the default dataset to review or export the rows.

The selected scope applies to every candidate in the run. Each run is a point-in-time check of public source signals. Run it again when you need a new check.

⚙️ Input

Add one candidate list and one platform scope for each run.

Input fields

FieldTypeWhat it does
platformScopestringRequired. Use selected to check the platforms in platforms, or all to check the full supported catalog for every candidate.
platformsarray of stringsChoose one or more platforms when platformScope is selected: instagram, facebook, x, linkedin, tiktok, youtube, reddit, pinterest, threads, bluesky, mastodon, github, gitlab, npm, devto, twitch, kick, discord, steam, roblox, or gmail.
candidatesarray of stringsRequired. Add one or more usernames or handles. Each value is checked on every platform in the selected scope. A full Gmail address such as name@gmail.com is also accepted.

Input example

This is the public input from a successful current-beta default-input run.

{
"platformScope": "selected",
"platforms": [
"github",
"instagram",
"youtube",
"gmail"
],
"candidates": [
"octocat"
]
}

🧾 Output

The Output tab opens the default dataset overview. Each dataset row contains one candidate and its valid per-platform source answers. The tables below cover the output link and the complete dataset row shape.

Output link

FieldTypeWhat it does
resultslinkOpens the checked candidates and their platform results in the default dataset overview.

Dataset row

FieldTypeWhat it does
candidatestringThe submitted username or handle for this row.
normalizedHandlestringThe normalized username or handle used for the checks.
platformResultsarray of objectsAt least one valid source answer for this candidate. Failed source checks are left out.
platformResults[].platformstringThe platform checked for this candidate.
platformResults[].verdictstringThe outcome: available, taken, invalid, or unresolved. Available or taken needs a clear source answer. Invalid means the source rejected the name. Unresolved means the source gave an uncertain answer.
platformResults[].profileUrlURLThe public profile URL checked for the platform, when the source provides one.
platformResults[].reasonstringThe source reason, required for invalid or unresolved answers. Source errors and failed checks are left out.

This complete row is from a successful current-beta default-input run.

{
"candidate": "octocat",
"normalizedHandle": "octocat",
"platformResults": [
{
"platform": "github",
"verdict": "taken",
"profileUrl": "https://github.com/octocat"
},
{
"platform": "instagram",
"verdict": "taken",
"profileUrl": "https://www.instagram.com/octocat/"
},
{
"platform": "youtube",
"verdict": "taken",
"profileUrl": "https://www.youtube.com/channel/UCuLNZr-IbDjSLgwQBFgQgIQ"
},
{
"platform": "gmail",
"verdict": "taken"
}
]
}

The unresolved verdict means that the source gave an uncertain answer. It does not mean that the check failed. Review its reason before making a decision. Availability can change after the check time, so treat these rows as point-in-time signals.

💳 Pricing

This Actor uses pay-per-event pricing. The primary event is username-platform-availability-checked, which represents one valid source answer for one submitted username on one supported platform, saved to the dataset. Failed source checks are not charged. Review the current Apify pricing panel for the live price and billing details.

🔌 Integrations

Open the default dataset in Apify, read the rows through the Apify API, export them for another workflow, or schedule the same one-list, one-scope check again. A later run is a new point-in-time check and does not create historical change tracking.

❓ FAQ

What happens when a source check fails after retries?

The failed check is left out of dataset rows and scraped totals, and it is not charged. Valid answers are kept, other checks continue, and the run gives one safe warning for the affected candidate. If failed checks leave no valid answers to report, the run fails.

What does available or taken mean?

It is the source's definitive availability signal for that platform at the time of the check. It does not prove account ownership or guarantee that the status will stay the same.

What does unresolved mean?

The source itself gave an uncertain answer about the username. The Actor keeps that answer as unresolved with the source's reason instead of guessing. A failed source check is left out.

Why is a username marked invalid?

The platform rejected the candidate under its username rules or returned an invalid-input response. Read the platform result's reason for its explanation.

Can I check a full Gmail address?

Yes. Add a full address such as name@gmail.com to candidates. The result keeps the submitted candidate and reports the normalized handle used for checks.

Can I check several usernames and platforms together?

Yes. Add several candidates and use either a selected platform list or the full supported catalog. One scope applies to every candidate in the run.

Does this Actor create or reserve accounts?

No. It only checks public availability signals. It does not create, reserve, claim, sign in to, or manage accounts or handles.

Is this an official platform tool, and does it prove ownership?

No. It is an independent Apify Actor. A public availability signal is not proof of ownership, inbox access, or account control.

No. The results help with operational naming research, but they are not trademark, legal, domain-registration, or business-name clearance.

📝 Changelog

v0.0 (21-09-2026)

  • Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré