Sherlock Username Search — Email & Phone from Profiles avatar

Sherlock Username Search — Email & Phone from Profiles

Pricing

from $10.00 / 1,000 account founds

Go to Apify Store
Sherlock Username Search — Email & Phone from Profiles

Sherlock Username Search — Email & Phone from Profiles

Hunt a username across Sherlock's 400+ social, dev, gaming and forum sites, then read the public profiles and extract emails, phones, website and display name when they are published. Filter by site or category. NSFW off by default. JSON or CSV out. No login, no API keys.

Pricing

from $10.00 / 1,000 account founds

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Sherlock Username Search — 400+ sites, then public emails and phones from claimed profiles

Find where a handle exists across 400+ social, dev, gaming, and forum sites, then read the public profile pages Sherlock found and pull emails, phones, website, and display name when they are sitting in the HTML.

JSON or CSV out. No login. No API keys. Powered by the open-source Sherlock Project.

Why Use This Scraper?

  • Contacts, not just URLs. The free Store leader returns a bag of links. This run visits claimed profiles and writes emails[] / phones[] when the page publishes them.
  • One row per site, with a real status. claimed, available, waf, or unknown — not a silent empty dataset.
  • Site and category filters. Limit to GitHub or to dev / social so a run finishes in seconds instead of minutes. (The free actor still cannot do this.)
  • Bulk handles. More than one username per run — the paid category leader caps you at five.
  • NSFW off unless you ask. Same default as the better clones.
  • You pay for claimed accounts, and again only when a contact is actually extracted. Blocked and unknown rows are free.

Coming from another Sherlock actor?

What people hit elsewhereHere
Free listing returns {username, links[]} and dies silent on "0 results"One row per site with claimed / available / waf / unknown. Empty catalog fails with a message, not an empty dataset.
"Wish there was an option to specify websites" (open issue on the free actor)sites and categories
Paid leader caps you at 5 usernames50 per run (5 on the free plan)
Cheap clones dump URLs onlyemails[], phones[], website, displayName from public HTML
NSFW mixed into the default catalogincludeNsfw defaults to false

Overview

This actor wraps sherlock-project (the same engine the official Apify Sherlock listing uses) and adds a public-page enrichment pass. Each dataset row is one username × one site. When enrichContacts is on (the default), claimed rows also carry whatever public email, phone, website, and display name the profile HTML exposes.

It is built for OSINT, brand-protection, and lead-enrichment workflows that already start from a handle. It is not a people-search engine: it will not accept an email or a phone as input, and it will not log into any site.

Related: the narrower Username Social Media Finder checks 50+ sites with soft-404 validation and no enrichment. Use that when you want a short, high-precision list. Use this actor when you want Sherlock's full catalog plus contacts.

Supported Inputs

You passExampleWhat happens
Username listoctocat, @nasaLeading @ stripped; each handle is scanned
Single username"username": "octocat"Same as a one-item list — for API/MCP callers
Wildcardjohn{?}doeExpands to john_doe, john-doe, john.doe
Site filter["GitHub","Reddit"]Only those Sherlock site names
Category filter["dev","social"]Keep matching groups

Not supported: email addresses, profile URLs, phone numbers, name-to-profile search, logged-in endpoints, password-reset probes.

Use Cases

WhoWhy
Investigators / OSINTMap a handle's footprint, then grab public contact lines without opening 400 tabs
Brand protectionFind impersonation accounts and any email they published on the profile
Growth / lead opsTurn a known username into a profile URL plus a public email or phone
Handle launchesTurn onlyFound off and read available rows before you announce a name
Agents / MCPOne structured dataset instead of shelling out to the Sherlock CLI

How It Works

How Sherlock username search works — handle in, 400+ site scan, public emails and phones out

  1. You pass one or more usernames and optional site / category filters.
  2. The actor loads Sherlock's live site catalog, drops NSFW targets unless you opted in, and runs the official sherlock() scan (up to 20 workers).
  3. Each site comes back as claimed, available, waf, or unknown.
  4. For every claimed profile, the actor reads public HTML (Sherlock's probe body first, then a GET of the profile URL) and extracts emails, phones, website, and display name.
  5. Rows stream into the dataset as they finish. You are charged for claimed accounts, and a second event only when an email or phone was actually found.

Input Configuration

FieldTypeDefaultNotes
usernamesarrayone of these requiredHandles, with or without @. Max 50 (5 on the free plan).
usernamestringone of these requiredSingle-handle alias. Merged with usernames.
sitesarrayallSherlock names such as GitHub, Instagram, Reddit.
categoriesarrayallsocial, dev, gaming, forum, media, business, other.
onlyFoundbooleantruePush claimed rows only. Off = also available / waf / unknown.
includeNsfwbooleanfalseInclude Sherlock's NSFW targets.
enrichContactsbooleantrueVisit claimed profiles for public emails and phones.
timeoutinteger30Per-site timeout, seconds (5–120).
maxConcurrencyinteger10Parallel enrichment fetches (1–40).
maxUsernamesinteger50Cap after wildcard expansion.
proxyConfigurationobjectoffUse a residential proxy if you see many waf / unknown rows.

Example — fast GitHub check

{
"usernames": ["octocat"],
"sites": ["GitHub"],
"enrichContacts": true
}

Example — full catalog, claimed only

{
"usernames": ["nasa"],
"onlyFound": true,
"includeNsfw": false
}

Example — is this handle free?

{
"usernames": ["my-new-brand"],
"onlyFound": false,
"enrichContacts": false,
"categories": ["social", "dev"]
}

Pricing

Pay per event. You are not billed for available, WAF, or unknown rows.

EventWhenPrice
Actor startOnce per run, per GB of memory$0.005
Account foundEach claimed row$0.01
Contact enrichedRow where enrichmentStatus is found (an email or phone was extracted)$0.015

Turn enrichContacts off for a scan-only run and you never see the contact event. A GitHub-only check that finds the profile but no public email costs start + $0.01.

Output Overview

One dataset row per username × site that passed onlyFound. Claimed rows include the profile URL and, when enrichment is on, whatever public contacts the HTML contained. Empty emails / phones arrays mean the page did not publish them — not that enrichment was skipped (enrichmentStatus tells you which).

Output Samples

Claimed GitHub profile with enrichment on (contacts depend on what that page publishes):

{
"username": "octocat",
"site": "GitHub",
"siteUrl": "https://www.github.com/",
"category": "dev",
"profileUrl": "https://www.github.com/octocat",
"status": "claimed",
"httpStatus": 200,
"responseTimeMs": 567,
"isNsfw": false,
"emails": [],
"phones": [],
"website": null,
"displayName": "octocat",
"bio": null,
"enrichmentStatus": "none_found",
"checkedAt": "2026-09-12T04:59:02Z",
"sherlockVersion": "0.16.0"
}

enrichmentStatus: "found" is the row you get when the public page actually listed an email or phone.

Key Output Fields

Identity

  • username — handle that was searched
  • site — Sherlock site name
  • categorysocial / dev / gaming / forum / media / business / other
  • profileUrl — profile URL when Sherlock built one
  • siteUrl — site home

Verdict

  • statusclaimed · available · waf · unknown
  • httpStatus — probe HTTP code, or null
  • responseTimeMs — Sherlock's probe time
  • isNsfw — site flagged NSFW in the catalog

Public contacts (claimed rows, when enrichContacts is true)

  • emails[]
  • phones[]
  • website
  • displayName
  • bioog:description / meta description, trimmed
  • enrichmentStatusskipped · none_found · found · blocked

Meta

  • checkedAt
  • sherlockVersion

FAQ

How is this different from misceres/sherlock? That listing is free and returns {username, links[]}. This one returns per-site status, lets you filter sites, and extracts public emails/phones.

How is this different from ntriqpro/sherlock-username-osint? Same Sherlock idea, but no 5-username cap, and claimed profiles are enriched. Their price is $0.02 per found account with no contact pass.

Why did I get zero claimed rows? The handle may not exist on the filtered sites, or a WAF blocked the probes (status: "waf"). Add a residential proxy and/or turn onlyFound off so you can see blocked rows.

Will every claimed profile have an email? No. Most social profiles do not publish one. You pay the contact event only when at least one email or phone is extracted.

Can I pass a single username like ntriqpro / Watson? Yes. username and usernames are merged and de-duplicated.

Where is the {username, links[]} bag the free actor returns? In the default key-value store as SUMMARYbyUsername[].links is that shape. The dataset stays one row per site. SUMMARY is not billed.

Can I pass an email address? No. The run fails with a clear error. Use TruePeopleSearch or FastPeopleSearch for email/phone-in lookups.

Does {?} work? Yes — john{?}doe becomes john_doe, john-doe, and john.doe, same as the Sherlock CLI.

Do you log into sites? No. Public HTTP only. No password-reset enumeration, no authenticated APIs.

Which Sherlock version is this? The Docker image pins sherlock-project (currently 0.16.0). Each row records sherlockVersion. The live site list is fetched from Sherlock's published catalog at run time.

Support

Additional Services

Need a custom export, a Maigret-sized catalog, or a scheduled watch on a brand handle? Email muhamed.didovic@gmail.com.

Explore More Scrapers

Full list: apify.com/memo23.

🤖 For AI Agents & LLM Apps

Compact reference for AI agents calling this actor via the Apify MCP server or the Apify API (actor: memo23/sherlock).

Purpose: Scan a username across Sherlock's 400+ site catalog and, on claimed profiles, extract public emails and phone numbers from the profile HTML.

Minimal input:

{
"usernames": ["octocat"],
"sites": ["GitHub"],
"enrichContacts": true
}

Output: one dataset row per username × site — username, site, siteUrl, category, profileUrl, status (claimed/available/waf/unknown), httpStatus, responseTimeMs, isNsfw, emails[], phones[], website, displayName, bio, enrichmentStatus, checkedAt, sherlockVersion. Also writes uncharged KV SUMMARY with byUsername[].links (misceres-shaped URL bag).

Behaviors an agent should know:

  • Pass usernames and/or username. Emails and http(s) URLs are rejected.
  • Always pass sites when you only need a few platforms — a full-catalog scan is 1–2 minutes per username.
  • onlyFound defaults to true. Set it false when you need availability rows.
  • Billing: account-found on each claimed row; contact-enriched only when enrichmentStatus is found. WAF / unknown / available rows are not billed.
  • enrichContacts: false skips the profile GET and never emits contact-enriched.
  • Many claimed social profiles publish no email. That is a none_found, not a failure.
  • Free-plan runs are capped at 5 usernames.

⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the Sherlock Project, Sherlock Project contributors, or any social network it queries. All trademarks mentioned are the property of their respective owners. Sherlock is MIT-licensed open source; this actor wraps that engine and adds a public-page enrichment pass.

The actor accesses only publicly available profile and probe URLs — no authenticated endpoints, no password-reset flows, and no content behind a login wall. People-search and username data is sensitive. You are responsible for ensuring your use complies with each site's Terms of Service, the Computer Fraud and Abuse Act and local equivalents, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of your organization. This actor is not a consumer reporting agency. Do not use the output for FCRA-regulated decisions (employment, credit, tenancy, insurance) or for harassment, stalking, or profiling individuals.

SEO Keywords

sherlock username search, sherlock osint apify, sherlock scraper, find username across social media, username checker 400 sites, social media username lookup, osint username enumeration, sherlock email enrichment, find email from username, find phone from social profile, brand protection username search, handle availability checker, sherlock alternative apify, digital footprint scraper, username reverse lookup, misceres sherlock alternative, ntriqpro sherlock alternative, public profile contact extractor, social account discovery tool