During an incident review or a fraud check, one question keeps coming back: what accounts is this email address tied to? The usual shortcut is to try "forgot password" on each site, which tells the account owner that someone is poking around.

I wrapped the open-source holehe engine (GPL-3.0) as an Apify Actor. You send an email address, it looks the address up on 210+ sites, and you get one row per site where it is registered. No password-reset email reaches the target.

What you get

Each registered account becomes one dataset row, not one row per email:

{ "email": "test@gmail.com", "platform": "codepen", "exists": true, "domain": "codepen.io", "method": "register", "emailRecovery": null, "phoneNumber": null, "rateLimit": false, "charged": true, "sitesChecked": 121 } 

A live test of test@gmail.com returned 17 confirmed accounts across 121 sites checked. Some sites also expose a masked recovery email or a masked partial phone number, and when they do, those fields are filled.

The 210+ figure is the number of sites a lookup is sent to. Not every site answers every lookup, and you are billed only for lookups that returned a confirmed answer.

Input

{ "emails": ["alice@example.com", "bob@example.org"], "timeout": 30, "maxEmails": 10 } 
  • emails: up to 500 addresses per run on paid plans
  • timeout: per-site timeout in seconds
  • maxSitesPerEmail: optional ceiling on how many sites each address is looked up on, which also caps the cost of a run
  • usernameLayer: on by default, also searches the part before the @ as a username on 390+ sites
  • includeDomainInfo: for company addresses, adds WHOIS, MX, SPF and DMARC rows

Why bother with an Actor

  • Batch and scheduled. Put a list of addresses in one run, or schedule it, and read the dataset as JSON, CSV or Excel.
  • API and integrations. Start it from Python or JavaScript, or from Make, n8n or a webhook.
  • A second engine for big sites. Instagram, Pinterest, Spotify and a few others often give holehe no answer. For those, a second engine asks the same site, still one lookup per site.

The free plan looks up the first address and shows the first 3 accounts in full. The rest are counted but not named, so you can see the real output before deciding anything.

Limits worth knowing

Username matches only show that the same handle exists on a site, not that it belongs to the same person. Treat them as leads to verify.

Use it only on addresses you own or are authorized to investigate, and follow the laws that apply to you, including GDPR and similar privacy rules. It is not a consumer reporting agency, so do not use the results for decisions about employment, credit, housing or insurance.

The Actor: Email OSINT Checker on Apify

I build these Actors at Ntriq (Korea). If you need another output field, say so in the comments.