Holehe Email OSINT Scraper - Find Accounts by Email avatar

Holehe Email OSINT Scraper - Find Accounts by Email

Pricing

from $4.40 / 1,000 email analyseds

Go to Apify Store
Holehe Email OSINT Scraper - Find Accounts by Email

Holehe Email OSINT Scraper - Find Accounts by Email

Email OSINT like Holehe: for each email, check whether it is registered on a validated set of sites, resolve its Gravatar profile (avatar and linked accounts), and get OSINT footprint and breach-check URLs (HIBP, DeHashed, IntelX). No login, no key. Export JSON, CSV, Excel.

Pricing

from $4.40 / 1,000 email analyseds

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

1

Bookmarked

205

Total users

57

Monthly active users

9 days ago

Last modified

Features

Limited permissions

Share

Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the Holehe open-source project. All trademarks mentioned are the property of their respective owners. "Holehe" is referenced only to describe the kind of check this Actor performs.

Investigate an email address the way Holehe does. For each email you get one record with:

  • Site registrations - whether the address is registered on 34 sites (36 with the optional adult sites), each answered as registered, not_registered or unknown, checked live on every run.
  • Gravatar profile - when the address has a public Gravatar: avatar URL, display name, username, full name, location, bio, job title, company, pronouns, the social accounts the owner verified (with their usernames), their links, and any public e-mail or contact details they chose to show.
  • Sign-in clues - the social logins (Google, Facebook, Apple) that Adobe or Duolingo report as linked to the address, Adobe's account type and status.
  • OSINT footprint URLs - ready-made Google dorks, LinkedIn and Facebook searches, and breach-check links (Have I Been Pwned, DeHashed, Intelligence X).

No login, no API key, no setup.

Sites checked

SiteWhat "registered" means
WordPress.coma WordPress.com account uses this e-mail
Duolingoa Duolingo account uses this e-mail (plus which social logins are linked)
Plurka Plurk account uses this e-mail
Firefoxa Mozilla (Firefox) account uses this e-mail
X (Twitter)the e-mail is already taken on X
Spotifya Spotify account uses this e-mail
Chess.comthe e-mail is in use on Chess.com
Adobean Adobe ID uses this e-mail (plus account type, sign-in methods and status)
LastPassa LastPass account uses this e-mail
Freelancera Freelancer.com account uses this e-mail
Snapchat (Bitmoji)a Bitmoji / Snapchat account uses this e-mail
Microsofta Microsoft account (Outlook, Microsoft 365) uses this e-mail. Addresses at Microsoft's own domains (outlook.com, hotmail.com and the like) read unknown, because Microsoft answers yes for every address there
Flickra Flickr account uses this e-mail
Ramblera Rambler ID uses this e-mail
Insightlyan Insightly CRM account uses this e-mail
amoCRMan amoCRM account uses this e-mail
Any.doan Any.do account uses this e-mail
Pinteresta Pinterest account uses this e-mail
Courseraa Coursera account uses this e-mail
Hugging Facea Hugging Face account uses this e-mail
HackerRanka HackerRank account uses this e-mail
Wixa Wix account uses this e-mail
MyAnimeLista MyAnimeList account uses this e-mail. Addresses at providers MyAnimeList refuses (hotmail.com, for one) read unknown
MyFitnessPala MyFitnessPal account uses this e-mail
Skyscannera Skyscanner account uses this e-mail
MeWea MeWe account uses this e-mail
Flipboarda Flipboard account uses this e-mail
Medala Medal account uses this e-mail
ClassDojoa ClassDojo account uses this e-mail
start.mea start.me account uses this e-mail
Neocitiesa Neocities site account uses this e-mail
JustWatcha JustWatch account uses this e-mail
Foxa Fox account (Fox News, Fox Nation, Fox Sports) uses this e-mail
Al Jazeeraan Al Jazeera account uses this e-mail
XNXX (optional, off by default)the site says the e-mail is in use or its owner excluded it
XVideos (optional, off by default)the site says the e-mail is in use or its owner excluded it

Every check asks the site's own sign-up or sign-in endpoint one read-only question. Nothing creates an account, resets a password or sends the address owner an e-mail.

How the results work (read this)

  • Three answers, never a guess. registered and not_registered come only from the site's own clear answer. A rate limit, a refusal, a timeout or an answer the site has never given before is unknown, and the site is listed in unknownOn with the reason in siteResults. A lookup that gets no answer (a timeout, a refusal, a rate limit or a server error) is asked up to two more times, each time on a fresh IP when the default proxy is on.
  • Sites change. Many sites have closed the "is this e-mail registered?" question over the years, so this Actor runs only checks that answered correctly in live tests (known accounts read as registered, a made-up address as not registered). Some sites reject addresses they consider fake or disposable (Spotify, Chess.com, Freelancer, Medal and Neocities among them) and MyAnimeList refuses some e-mail providers: those answer unknown.
  • Gravatar shows what the owner made public. Most addresses have no Gravatar; then gravatar.exists is false. When Gravatar does not answer clearly, it is null with the reason, never "no profile".
  • Billing follows the answers. An email is billed only after at least one lookup answered for it. Entries that are not e-mail addresses are skipped, named on the run summary and never billed. From 16 November 2026 each run also pays Apify's Actor Start fee (see How much does it cost?).

Example output

A default run for admin@gmail.com (lists shortened):

{
"type": "email",
"email": "admin@gmail.com",
"valid": true,
"checkedAt": "2026-11-02T02:13:06.221Z",
"gravatar": { "exists": false, "profileUrl": null, "displayName": null, "location": null, "accounts": null, "status": "not_found", "username": null, "avatarUrl": null },
"registeredOn": ["WordPress.com", "Duolingo", "Plurk", "X (Twitter)", "Spotify", "Chess.com", "Adobe", "LastPass", "Freelancer", "Snapchat (Bitmoji)", "Microsoft", "Flickr", "Rambler", "Insightly", "amoCRM", "Any.do", "Pinterest", "Coursera", "Hugging Face", "HackerRank", "Wix", "MyAnimeList", "MyFitnessPal", "Skyscanner", "Flipboard", "Medal", "ClassDojo", "start.me", "Neocities", "JustWatch", "Fox", "Al Jazeera"],
"checkedSites": 34,
"registeredCount": 32,
"footprintUrls": [
{ "kind": "breach", "name": "Have I Been Pwned", "url": "https://haveibeenpwned.com/account/admin%40gmail.com" },
{ "kind": "google", "name": "Google exact", "url": "https://www.google.com/search?q=%22admin%40gmail.com%22" }
],
"registeredOnText": "WordPress.com, Duolingo, Plurk, X (Twitter), Spotify, Chess.com, Adobe, LastPass, Freelancer, Snapchat (Bitmoji), Microsoft, Flickr, Rambler, Insightly, amoCRM, Any.do, Pinterest, Coursera, Hugging Face, HackerRank, Wix, MyAnimeList, MyFitnessPal, Skyscanner, Flipboard, Medal, ClassDojo, start.me, Neocities, JustWatch, Fox, Al Jazeera",
"notRegisteredOn": ["Firefox", "MeWe"],
"unknownOn": [],
"answeredSites": 34,
"siteResults": [
{ "site": "Duolingo", "status": "registered", "reason": null, "details": { "signInWith": ["Google"], "hasCustomAvatar": false }, "detailsText": "linked logins Google; default avatar" },
{ "site": "Firefox", "status": "not_registered", "reason": null, "details": null, "detailsText": null },
{ "site": "Adobe", "status": "registered", "reason": null, "details": { "accountTypes": ["individual"], "signInMethods": ["password"], "signInWith": [], "accountStatus": "active" }, "detailsText": "account type individual; status active; sign-in methods password" }
],
"linkedSocialLogins": ["Google"]
}

Output fields

FieldMeaning
emailThe address, trimmed and lower-cased
validtrue on every row (entries that are not e-mail addresses are skipped, not output)
checkedAtWhen the address was checked (UTC)
gravatar.existstrue = public Gravatar profile, false = none, null = Gravatar gave no clear answer
gravatar.status / gravatar.reasonfound, not_found or unknown, and why when unknown
gravatar.profileUrl, displayName, username, fullName, avatarUrlThe public profile's identity fields
gravatar.location, aboutMe, jobTitle, company, pronounsThe profile's details, when the owner filled them in
gravatar.accounts / gravatar.accountsTextSocial accounts on the profile (name, url, username, verified, label) and a one-line summary
gravatar.links, publicEmails, contactInfoLinks, e-mails and contact details the owner chose to publish
registeredOn / registeredOnTextSites the address is registered on (list and one line)
registeredCountHow many sites said registered
notRegisteredOnSites that said the address is not registered
unknownOnSites that gave no clear answer this run (see siteResults for why)
checkedSites / answeredSitesSites checked, and how many of them answered clearly
siteResultsOne entry per site: site, status, reason, details (Adobe account type and sign-in methods, Duolingo linked logins, Bitmoji account type, WordPress e-mail verification) and detailsText (the same clues as one line of text)
linkedSocialLoginsGoogle / Facebook / Apple logins that Adobe or Duolingo report as linked to the address
footprintUrlsOSINT and breach-check links for the address (kind, name, url)

Three dataset views: Emails (one row per address: registrations, sites checked and answered, Gravatar yes/no), Per-site results (one row per address and site: the result, the account clues as text, and why when a site gave no clear answer) and Footprint and breach-check links (one clickable row per address and link).

Input

FieldDescription
EmailsAddresses to investigate, one per line (up to 2,000 per run). A pasted list with commas or semicolons, or entries like Jane Doe <jane@example.com>, is split automatically.
Include OSINT footprint URLsRecon and breach-check links (on by default).
Include adult (NSFW) sitesAlso check the two adult sites in the table above, XNXX and XVideos (off by default).
Proxy configurationThe default (Apify Proxy) gives every request a fresh IP, which keeps per-IP rate limits away.
{ "emails": ["test@gmail.com", "name@company.com"] }

Use cases

  • OSINT and investigations - fingerprint an address: registrations, public profile, breach leads.
  • Fraud and account-risk checks - a sign-up address registered on many established services (and linked to Google or Facebook logins) behaves differently from a fresh throwaway.
  • Lead and account enrichment - see whether a lead's address has real accounts and a public profile, and pick up the social links its owner published on Gravatar.

Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. You can call this Actor from Claude, ChatGPT or any agent framework through the Apify MCP server - describe the data you need and let the assistant run this Actor for you. Pass emails and read the email records back.

Agent-ready: autonomous payments (x402 & Skyfire)

This actor is agent-ready: AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:

  • x402: an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server, with no account and no API key.
  • Skyfire: agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

How much does it cost?

This Actor uses Apify's pay-per-event pricing: you are charged for the emails it delivers, with no monthly rental. From 16 November 2026 each run also pays Apify's standard Actor Start fee, charged once per GB of run memory (a run at the default 1 GB pays it once). The events it can charge are:

  • Email (titled "Email analysed" until 16 November 2026) - One email analysed: registration checks, Gravatar profile and OSINT footprint URLs. An email is charged only after at least one lookup answered for it.
  • Actor Start (from 16 November 2026) - Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).

The current price of each event, and the prices that apply from 16 November 2026, are shown on the Pricing tab of this page. Set a maximum total charge on the run if you want a hard cap on spend, and use the input limits to control how much the Actor fetches.

Automate & schedule

Run this Actor on autopilot and pull results into your own stack:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/holehe-scraper').call({
emails: ['test@gmail.com'],
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} records`);

Integrate with any app

Connect the dataset to thousands of apps - no code required:

  • Make - multi-step automation scenarios.
  • Zapier - push new records straight into your CRM or spreadsheet.
  • Slack - get notified when a scheduled run finds something new.
  • Google Drive / Sheets - auto-export every run to a spreadsheet.
  • Airbyte - pipe results into your data warehouse.
  • GitHub - trigger runs from commits or releases.

FAQ

Does it need an API key or a login? No.

Why is a site unknown for some addresses? The site gave no clear answer this time: a rate limit, a refusal, a timeout, or the site calling the address invalid. The reason is in siteResults, and the run summary names the sites that did this. Re-running later usually turns them into clear answers.

Does the address owner find out? The checks use read-only "is this e-mail taken?" questions that sites answer during sign-up and sign-in. No account is created, no password reset is started and no e-mail is sent to the address.

Am I billed for addresses that are not valid? No. Entries that are not e-mail addresses are skipped and named on the run summary, and an address is billed only after at least one lookup answered for it. A run that stops at its maximum total charge or its time limit names the addresses it did not deliver. From 16 November 2026 each run also pays Apify's Actor Start fee once per GB of run memory, whatever its input.

Is this legal? It checks publicly observable signals and builds public search links. Use the results in line with each site's terms and applicable law, and see Data & lawful use below.

Data & lawful use

You supply the input (email addresses); the Actor only checks or enriches what you give it against publicly available sources. Make sure you collected that input lawfully and have a lawful basis to process it. This is a verification and open-source-intelligence tool for security research, fraud prevention and checking identifiers you are authorised to check. Do not use it to locate, track, profile or harass individuals, and follow the anti-spam and telemarketing rules that apply to you (for example GDPR and PECR in the EU and UK, CAN-SPAM and the TCPA in the US, CASL in Canada). Honour opt-outs and deletion requests.

Under Apify's Standard Actor Contract, which governs your use of this Actor, you are the controller of any personal data in your input and output and scrapesage acts only as your processor: that data is processed solely to run your job, written only to your own Apify storage, never used for any other purpose and never shared onward. If you need help with a data-subject request that involves this Actor's output, open an issue on the Issues tab.

Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the Holehe open-source project. All trademarks mentioned are the property of their respective owners.

"Holehe" is referenced only in a descriptive, nominative sense - to describe the kind of check this Actor performs. This Actor is an independent implementation, is not an official Holehe product and is not authorised or certified by the Holehe open-source project. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws and regulations.

Need help?

Open an issue on the Actor's Issues tab, or visit the Apify help center. Feature requests are welcome - this Actor is actively maintained.