LinkedIn Profile Email Finder avatar

LinkedIn Profile Email Finder

Pricing

from $6.80 / 1,000 profile with e-mails

Go to Apify Store
LinkedIn Profile Email Finder

LinkedIn Profile Email Finder

Find the verified work e-mail of LinkedIn profiles, no login or cookies: the company website, its address layout and an SMTP mailbox check, plus the full profile with title, company and experience. An e-mail is billed only when its mailbox is verified.

Pricing

from $6.80 / 1,000 profile with e-mails

Rating

5.0

(5)

Developer

BlueskyScraper

BlueskyScraper

Maintained by Community

Actor stats

0

Bookmarked

29

Total users

19

Monthly active users

5 days ago

Last modified

Share

LinkedIn Profile Email Finder finds the work e-mail of people from their LinkedIn profile URLs, without a login, cookies or an API key. For each person it finds the company's own website, learns how that company writes its addresses, builds the address and verifies the mailbox by an SMTP check — next to the profile itself (name, headline, company, location, followers). $8 per 1,000 verified e-mails: you are charged for an e-mail only when its mailbox is verified; catch-all domains are returned unverified and not charged as an e-mail. Profiles without a verified e-mail cost $3.2 per 1,000.

Tested head-to-head — 9 October 2026

LinkedIn scrapers tested head-to-head: this Actor charges $3.2 per 1,000 profiles, $3.2 per 1,000 companies and $1.6 per 1,000 posts with no start fee, against $4.00–5.00, $4.01 and $2.00 for the most-used LinkedIn scrapers

The same requests went to this Actor and to the most-used LinkedIn scrapers of the same kind on the Apify Store: 10 public profiles, 6 company pages (Microsoft, Stripe, HubSpot, OpenAI, Canva, Apify), the 10 latest posts of 3 companies and of 2 people, and the work e-mail of 10 people (founders and executives).

This ActorThe most-used others
Price per 1,000 profiles$3.2$4.00–5.00
Price per 1,000 company pages$3.2$4.01–4.28
Price per 1,000 posts$1.6$1.42–2.00 on these runs (one charges $0.01 per run plus $0.001 per post)
Start fee per runnonenone to $0.01
Company page: fields filled (6 companies)33, incl. street address, office locations, affiliated pages19–32
Company posts: 30 asked from 3 pages30 in 4.7 s, reposts included24–30 in 6.2–13.9 s
Person posts: 20 asked from 2 people20, articles included20
Profiles: 10 asked10 of 10 in 31 s10 of 10 in 26 s
Work e-mail of 10 people (9 October 2026)7 of 10 mailbox-verified (SMTP check); 3 on catch-all domains returned unverified and not charged as e-mails — $8 per 1,000 verified e-mailsthe leader: 8 of 10 verified + 2 catch-all, all 10 billed at $10 per 1,000

What a logged-out visitor cannot see stays out of reach: 5 of the 10 test people limit their public profile, so for them LinkedIn shows only the headline, current company, location and followers — leaders that read LinkedIn with an account return full experience and skills there.

What is LinkedIn Profile Email Finder?

A LinkedIn email finder for sales prospecting, recruiting outreach and lead enrichment. Paste profile links — https://www.linkedin.com/in/kippbodnar or just kippbodnar — and get a sheet with each person's verified work e-mail and the evidence behind it. It works as a LinkedIn to email API from Python, JavaScript, Make, Zapier or n8n. No LinkedIn account is used, so yours cannot be restricted, and no third-party e-mail database is resold: every address is worked out from the company's own public website at the time of the run.

How the e-mail is found

  1. Company — the current company from the profile (or your Company override).
  2. Domain — the company's website, accepted only with evidence: linked from its LinkedIn page, the domain spells the company name, the site carries the company name, or it is a known parent company. A domain that cannot be backed is not used — no address is built on a guess.
  3. Layout — a few pages of the company site are read; addresses published there show the layout (first.last, flast, first, firstl…).
  4. Mailbox check — the mail domain is checked for a mail server (MX), then the address goes through an SMTP mailbox check: the address published on the company site or built in the company's own layout first, then the most likely layouts, at most 2 checks per person, stopping at the first address whose mailbox exists. No e-mail is sent. The mailbox verified by the SMTP check is the only thing billed as an e-mail (emailVerified: true, emailStatus: mailbox-verified, confidence: verified).
  5. Catch-all and unconfirmed — on a catch-all domain (the mail server accepts any address, e.g. stripe.com) no mailbox can be confirmed: the address comes back unverified in emailGuess with emailCatchAll: true and is not charged as an e-mail. The same for a server that will not say (mailbox-unknown) and for layouts with no mailbox (mailbox-invalid). emailVerification shows every check made (status, score, time, the addresses tried).

Measured on 10 public profiles of founders and executives (9 October 2026): 7 of 10 came with a mailbox-verified e-mail (2 SMTP checks per verified address on average); the other 3 were on catch-all domains and came back unverified in emailGuess, not charged as e-mails.

If the mailbox check is unavailable in a run, the Actor falls back to the evidence rules: an address goes into email only at or above Minimum e-mail confidence (default medium — the company's own site confirms the layout), and summary says so.

What data does it return?

FieldExample
emailondra@apify.com — only a mailbox-verified address
emailVerifiedtrue (false — checked, not confirmed; null — not checked)
emailCatchAllfalse (true — the domain accepts any address, nothing can be confirmed)
emailVerification{ status: "safe", score: 98, checkedAt, checks: 2, tried: [{ email, status }] }
confidenceverified (confirmed, high, medium, low, unusable without a mailbox check)
emailStatusmailbox-verified (catch-all, mailbox-unknown, mailbox-invalid; undeliverable / risky / unknown when the domain fails the DNS check)
emailGuessthe best unverified address when it is not put into email — not charged as an e-mail
emailDomainStatusaccepts-mail
domain / domainEvidenceapify.com / the company's LinkedIn page links this website
emailPattern / emailPatternSourcefirst / default
foundOnSitefalse
alternativesondra.urban@…, ourban@…
emailProvider, emailMxHost, emailIsRole, emailIsFree, emailIsDisposablemail-server facts
summaryondra@apify.com: the mailbox was confirmed by an SMTP check.
profilefullName, headline, title, company, location, followers, connections, about, education, linkedinUrl…

How often each profile field is filled

LinkedIn shows logged-out visitors a shorter profile than members see. Measured on 55 mixed profiles (3 October 2026):

Filled inProfile fields
Every profilefullName, headline (as in the page title — for 7 in 10 people that is their current company), location, country, followers, connections, imageUrl, linkedinUrl
Most profilescompany and companyLinkedinUrl (9 in 10; with several current jobs — the main one, see companyChosenBy; the rest in otherCurrentCompanies), about (3 in 4), recommendations (7 in 10), education (6 in 10), website (5 in 10)
Some profilescertifications, honorsAndAwards, languages, volunteering, publications (1 in 4 to 1 in 3)
Few profilesjob title and full experience with titles and dates (about 1 in 5 — LinkedIn masks past employers for logged-out visitors), skills (about 1 in 8)

Added 5 October 2026 (checked on 7 public profiles): every role in the Experience section, including each role inside a company group (one long career went from 11 to 24 roles), with companyLogo and location; every school in the Education section with degree and fieldOfStudy (schools without dates used to be missing); city, region, countryCode; coverImageUrl, memberId, profileUrn; languageProficiencies, courses, projects, testScores, coursesTaught when the profile shows those sections. The exact connection count, Featured, interests and open-to-work / hiring flags are not shown to logged-out visitors, so they are not returned.

Added 5 October 2026 (round 2): similarProfiles — the "Other similar profiles" side rail of the public profile (LinkedIn's "People also viewed" as logged-out visitors see it): name, headline as the card shows it (usually the current company), location, followers, profile URL and photo of each person, 9–20 per profile (10 of 11 checked profiles show it). sameNameProfiles — "Others named …", when LinkedIn shows that rail (1 of 11). Same page, no extra request or charge.

An empty field means LinkedIn did not show it, not that the run failed.

💰 How much does it cost to find e-mails from LinkedIn?

RowPrice
Profile with e-mail — email is filled: the mailbox is verified by the SMTP check$0.008 — $8 per 1,000
Profile (no verified e-mail: catch-all domain, mailbox not confirmed, or no address could be backed — the best guess is in emailGuess)$0.0032 — $3.2 per 1,000

Each row is billed once, as one or the other. No start fee, proxies included. Hidden and non-existent profiles are free error rows. Apify's free plan ($5 of monthly credit) covers about 600 verified e-mails a month. Paid Apify plans get tiered discounts automatically.

How to find e-mails from LinkedIn profiles

  1. Click Try for free.
  2. Paste profile URLs or slugs into 👤 LinkedIn profiles, or link a Google Sheet / CSV in 📄 URLs from a file or sheet.
  3. Optional: set Company override (e.g. hubspot.com) when the whole list works at one company.
  4. Click Start; open the Work e-mails view and export it.

⬇️ Input

{
"profileUrls": [
"https://www.linkedin.com/in/kippbodnar",
"https://www.linkedin.com/in/wadefoster",
"https://www.linkedin.com/in/satyanadella"
],
"findEmail": true
}

⬆️ Output

{
"type": "profile",
"fullName": "Ondra Urban",
"title": "COO",
"company": "Apify",
"email": "ondra@apify.com",
"emailVerified": true,
"emailCatchAll": false,
"confidence": "verified",
"emailStatus": "mailbox-verified",
"emailGuess": null,
"emailDomainStatus": "accepts-mail",
"domain": "apify.com",
"domainSource": "linkedin",
"emailPattern": "first",
"alternatives": [
{ "email": "ondra.urban@apify.com", "pattern": "first.last" },
{ "email": "ourban@apify.com", "pattern": "flast" }
],
"emailVerification": {
"provider": "reoon", "status": "safe", "score": 98, "checkedAt": "2026-10-09T08:17:32.569Z", "checks": 2,
"tried": [
{ "email": "ondra.urban@apify.com", "status": "invalid" },
{ "email": "ondra@apify.com", "status": "safe" }
]
},
"summary": "ondra@apify.com: the mailbox was confirmed by an SMTP check.",
"linkedinUrl": "https://www.linkedin.com/in/ondra-urban"
}

When no mailbox can be verified, email is empty and summary says why — a catch-all domain, a mailbox that does not exist, no current company, a company without its own mail domain, a domain that could not be confirmed, or a domain that takes no mail.

What LinkedIn shows without a login

This Actor reads the public pages LinkedIn serves to logged-out visitors and search engines — no account, no cookies, nothing that could get an account banned. That decides what is possible:

  • Hidden profiles. Some people hide their profile from logged-out visitors; LinkedIn then answers with a login wall or HTTP 999 for that profile from every address. On mixed lists about 1 in 4 or 5 profiles is refused on the first route. Those get one more try through an unblocking route, paid only from your run's own margin (never from a subsidy that would have to be priced in). Whatever still stays hidden comes back as a free error row saying so.
  • Recent posts only. A logged-out visitor sees a company's ~10 newest posts (median 9 on a 20-company check, 2 of 20 showed none) and a person's ~5–10 newest posts, quote-shares and reposts plus up to 10 articles. A page with fewer posts than you asked for adds one free notice row saying how many LinkedIn showed. There is no paging back to older posts without a login — use the Only posts not delivered before switch on a daily schedule to build a full history from now on.
  • Shortened surnames. A few profiles show the surname as an initial ("Diego C.") to logged-out visitors; the row says so.
  • No private data. Phone numbers, connections lists and contact info behind the login are not read.

Pages that do not exist (HTTP 404) are free error rows too. A run in which LinkedIn refuses everything ends with error rows and no charge.

Use cases

Sales prospecting

Turn a list of decision makers' LinkedIn URLs into an outreach list with work e-mails.

Recruiting outreach

Reach candidates at their work address with the evidence of how it was built.

CRM enrichment

Fill the e-mail column for contacts that only have a LinkedIn link.

Integrations and API

Use LinkedIn Profile Email Finder like any Apify Actor:

  • API: start a run and read the dataset over HTTP — see the API tab for ready-made calls.
  • Python:
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("blueskyscraper/linkedin-profile-email-finder").call(run_input={"profileUrls": ["https://www.linkedin.com/in/kippbodnar", "https://www.linkedin.com/in/wadefoster", "https://www.linkedin.com/in/satyanadella"]})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row)
  • JavaScript:
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('blueskyscraper/linkedin-profile-email-finder').call({"profileUrls": ["https://www.linkedin.com/in/kippbodnar", "https://www.linkedin.com/in/wadefoster", "https://www.linkedin.com/in/satyanadella"]});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
  • No-code: Make, Zapier, n8n, Google Sheets, Airtable, Slack and webhooks through Apify integrations — send every finished run's rows wherever your team works.
  • AI agents (MCP): add the Actor to Claude, ChatGPT, Cursor or any MCP client through the Apify MCP server (https://mcp.apify.com) and ask for LinkedIn data in plain words.
  • Schedules: run it every day or week from the Schedules page; combine with Maximum results per run to cap the bill.

❓ FAQ

The Actor reads only pages that LinkedIn shows to anyone without an account. Scraping public data is generally lawful, but names, job titles and e-mails are personal data under laws such as the GDPR and CCPA: have a lawful reason to process them, keep them safe, and honour opt-outs. When in doubt, ask a lawyer.

Do I need a LinkedIn account, cookies or a proxy?

No. Nothing to log in to, no cookies to paste, no proxy to set up — your own LinkedIn account is never touched, so it cannot be restricted. Proxies are included in the price.

Can I use it with the Apify API?

Yes — every run can be started and read over the Apify API, from Python, JavaScript or any HTTP client. See Integrations and API above.

Can I use it through an MCP server?

Yes. Add it to the Apify MCP server (https://mcp.apify.com) and your AI assistant can call it directly.

Can I integrate it with other apps?

Yes: Make, Zapier, n8n, Google Sheets, Airtable, Slack and webhooks through Apify integrations.

Why did some pages come back as error rows?

Either the page does not exist (404), or LinkedIn hides it from logged-out visitors. Both are free — you pay only for rows with data. The error field says which.

Do I pay for errors, filtered-out posts or the start of a run?

No. There is no start fee; error rows and posts removed by your filters are never billed. Maximum results per run and Apify's Max cost per run are hard ceilings — when the cost limit is reached, the run stops by itself with everything written already paid for.

Are the e-mails verified?

Yes: the mailbox is verified by an SMTP check (no e-mail is sent), and only a verified mailbox is put into email and charged as an e-mail. Catch-all domains (the server accepts any address) are returned unverified in emailGuess with emailCatchAll: true and are not charged as an e-mail — no service can confirm a person's mailbox there.

What if the profile has no current company?

The row stays a plain profile with a summary explaining why. Fill Company override when you know the company.

Your feedback

Something missing or wrong? Open an issue on the Issues tab — we read every one.

You might also like

ActorWhat it does
LinkedIn ScraperProfiles, work e-mails, company pages and latest posts in one Actor
LinkedIn Profile Details ScraperFull public profiles from a list of profile URLs
LinkedIn Company Details ScraperCompany pages: website, industry, size, followers, address
LinkedIn Company Posts ScraperLatest posts of company pages with likes and comments
LinkedIn Profile Posts ScraperLatest posts and articles of people