LinkedIn Profile Scraper avatar

LinkedIn Profile Scraper

Pricing

from $2.50 / 1,000 profiles

Go to Apify Store
LinkedIn Profile Scraper

LinkedIn Profile Scraper

Scrape LinkedIn profiles without login or cookies: name, headline, location, company, job titles, experience, education, followers and recent posts. Search people by name and add available work emails and clearly labeled email guesses.

Pricing

from $2.50 / 1,000 profiles

Rating

0.0

(0)

Developer

Automly

Automly

Maintained by Community

Actor stats

0

Bookmarked

24

Total users

15

Monthly active users

2 days ago

Last modified

Share

LinkedIn Profile Scraper + Email Finder (No Login)

What is LinkedIn Profile Scraper + Email Finder?

LinkedIn Profile Scraper + Email Finder lets you scrape public LinkedIn profiles without logging in: name, headline, location, current company, job titles, work history, education, followers, connections and recent posts. Paste profile links or search people by name, and optionally find each person's work email. Click Start and download the results as Excel, CSV or JSON.

  • ⚡ Speed: about 150 profiles per minute (120 profiles in 41 seconds in our test)
  • 🔓 No login: no LinkedIn account, cookies or API key needed, so no account can get restricted
  • 🔎 Search by name: type "Satya Nadella Microsoft" and get the matching profiles
  • ✉️ Work emails: emails published on the web, or a guess from the company's email format
  • 💸 Free to try: the $5 of free usage every Apify account gets each month covers at least 800 profiles

What can LinkedIn Profile Scraper do?

  • Scrape LinkedIn profiles from a list of links or usernames
  • Find LinkedIn profiles by name, optionally narrowed by company, job title or place
  • Get the headline, location, current company and followers of each profile
  • Get the full work history and education of profiles that LinkedIn shows in full (creators, founders, executives and other public figures)
  • Get links to the person's recent posts and activity
  • Find work emails: the company's email domain and email provider, an email published on the web for this person, or a guess built from the company's most common email format (for example first.last@company.com)
  • Export to Excel, CSV, JSON, HTML or XML, or send the results to Google Sheets, HubSpot, Make, Zapier and more

What data can you extract from LinkedIn profiles?

👤 Full name💼 Headline📍 Location and country
🏢 Current company🧑‍💼 Job titles📜 Work history with dates
🎓 Education👥 Followers and connections🏅 Badges (Creator, Top Voice)
🖼️ Profile photo📝 About section📰 Recent activity links
✉️ Work email or email guess🌐 Company email domain📮 Company email provider

How to scrape LinkedIn profiles

  1. Create a free Apify account (no credit card needed).
  2. Open LinkedIn Profile Scraper + Email Finder.
  3. Paste profile links such as https://www.linkedin.com/in/satyanadella, or type names under Search by name.
  4. Turn on Find work emails if you want emails.
  5. Click Start, and download the results when the run finishes.

How much does it cost to scrape LinkedIn profiles?

You pay $2.50 per 1,000 profiles, or $6.00 per 1,000 profiles that come with a work email or an email guess (plus $0.00005 when a run starts). You pay the email price only when an email or a guess is returned. For example, 100 profiles cost $0.25, or $0.60 if all of them get an email. Every Apify account gets $5 of free usage each month, so you can try it at no cost. See the Pricing tab for the current prices; paid Apify plans get the same price per result.

⬇️ Input

SettingWhat it does
Profile links or usernamesProfiles to scrape: a link (https://www.linkedin.com/in/williamhgates) or just the username (williamhgates)
Search by nameNames to find, optionally followed by a company, title or place: Satya Nadella Microsoft. The first two words are the name (the first word for Chinese, Japanese and Korean names: 王伟 Microsoft); put longer names in quotes: "Mary Ann Smith" Boston
Max profiles per nameHow many matching profiles to scrape for each name (default 10)
Find work emailsAlso look for each person's work email. Off by default; profiles with an email or a guess cost more

Example:

{
"profileUrls": ["https://www.linkedin.com/in/satyanadella", "williamhgates"],
"queries": ["Melanie Perkins Canva"],
"maxResultsPerQuery": 3,
"includeEmail": true
}

⬆️ Output

You get one row per profile. You can view them as a table in Apify Console (a Profiles view and an Emails view) or download them as Excel, CSV, JSON, HTML or XML. The email fields are included when Find work emails is on.

{
"linkedinUrl": "https://www.linkedin.com/in/satyanadella",
"publicIdentifier": "satyanadella",
"name": "Satya Nadella",
"headline": "Chairman and CEO at Microsoft",
"about": "As chairman and CEO of Microsoft, I define my mission and that of my company as empowering every person and every organization on the planet to achieve more.",
"location": "Redmond, Washington, United States",
"countryCode": "US",
"photo": "https://media.licdn.com/dms/image/v2/C5603AQHHUuOSlRVA1w/profile-displayphoto-shrink_200_200/...",
"followers": 12189463,
"connections": "500+",
"badges": ["Creator", "Top Voice"],
"currentCompany": "Microsoft",
"jobTitles": ["Chairman and CEO", "Member Board Of Trustees"],
"currentPositions": [
{"name": "Microsoft", "url": "https://www.linkedin.com/company/microsoft", "startDate": "2014-02"},
{"name": "University of Chicago", "url": "https://www.linkedin.com/school/uchicago/", "startDate": "2018"}
],
"pastCompanies": [
{"name": "Starbucks", "url": "https://www.linkedin.com/company/starbucks", "startDate": "2017", "endDate": "2024"}
],
"education": [
{"name": "The University of Chicago Booth School of Business", "url": "https://www.linkedin.com/school/universityofchicagoboothschoolofbusiness/", "startDate": "1994", "endDate": "1996"}
],
"experience": [
{
"title": "Chairman and CEO",
"companyName": "Microsoft",
"companyUrl": "https://www.linkedin.com/company/microsoft",
"startDate": "Feb 2014",
"endDate": "Present",
"duration": "12 years 8 months",
"location": "Greater Seattle Area",
"description": null
}
],
"recentPostUrls": ["https://www.linkedin.com/posts/satyanadella_were-building-copilot-as-a-new-os-for-work-activity-7509227111648452609-zk5Z"],
"profileVisibility": "full",
"companyDomain": "microsoft.com",
"mxProvider": "Microsoft 365",
"email": null,
"emailSource": null,
"emailGuess": "satya.nadella@microsoft.com",
"emailFormat": "first.last",
"emailFormatShare": 34.5,
"source": "Satya Nadella Microsoft",
"fetchedAt": "2026-09-27T11:58:06Z"
}

Each run also saves a short report with how many profiles it covered, and every profile or name that gave no row with the reason.

Why do some profiles have fewer fields?

LinkedIn decides how much of a profile it shows to people who are not logged in, and this scraper returns exactly that. profileVisibility tells you which kind you got:

  • full: creators, founders, executives and other public figures. Everything, including work history and education.
  • limited: most members. Name, headline, location, current company, followers, connections, photo, a short About and recent posts, but no work history.
  • hidden: the member shows the profile to logged-in members only. You still get the name, headline and, when listed, the location, company and school.

✉️ How are emails found?

When Find work emails is on, the scraper finds the person's current company, its website and the domain it uses for email, and checks that the domain receives email. Then it looks for:

  1. A published email (email): an address for this person at the company's domain, published on a public web page (emailSource is that page).
  2. An email guess (emailGuess), when nothing is published: the person's name in the company's most common email format (emailFormat, with the share of the company's addresses that use it in emailFormatShare).

A guess is pattern-based and not checked against the mailbox, so some guesses will bounce. Formats quoted with a high share (for example 90%) are the most reliable. The scraper never guesses when the company's email format is unknown.

How can I use LinkedIn profile data?

  • Lead generation: turn a list of names or profile links into leads with company, title and work email
  • Recruiting: check candidates' current roles, locations and work history
  • Sales prospecting: find decision makers by name and company and reach them by email
  • CRM enrichment: add headlines, companies, followers and emails to your contact records
  • Market and influencer research: compare creators by followers and track what they post

Use it from your own code

Run the scraper with the Apify API or the Python and JavaScript clients:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("automly/linkedin-profile-scraper").call(run_input={
"profileUrls": ["satyanadella", "williamhgates"],
"includeEmail": True,
})
for profile in client.dataset(run["defaultDatasetId"]).iterate_items():
print(profile["name"], profile["headline"], profile.get("email") or profile.get("emailGuess"))

❓FAQ

How much does it cost to scrape LinkedIn profiles?

You pay per 1,000 profiles. Profiles with a work email or an email guess cost more, and you pay the email price only when an email or a guess is returned. See the Pricing tab for the current prices. Every Apify account gets $5 of free usage each month, so you can try it at no cost.

Do I need a LinkedIn account or cookies?

No. The scraper only reads what LinkedIn shows to visitors who are not logged in, so you never risk your own account.

Why is the work history empty?

LinkedIn shows work history without login only for profiles it shows in full (see "Why do some profiles have fewer fields?" above). For other profiles you still get the headline and current company.

Why is there no email for some profiles?

An email needs the person's current company, a company domain that receives email, and either a published address or a known email format. Profiles without a company, companies without a website, and companies whose email format is not published get no email.

Are the email guesses verified?

No. A guess follows the company's most common format and is not checked against the mailbox. Use an email verification tool before a large send.

Can I connect LinkedIn Profile Scraper + Email Finder to other tools or AI agents?

Yes. Start runs and download results with the Apify API or the Python and JavaScript clients, send results to Make, Zapier, n8n, Google Sheets or Slack with Apify integrations and webhooks, or let AI assistants and agents run it through the Apify MCP server at mcp.apify.com.

This scraper only collects what is publicly visible without login and emails published on the open web. You are responsible for how you use the data: personal data such as names and work emails is protected by laws like the GDPR in Europe and the CAN-SPAM Act in the US, which set rules for storing it and for sending marketing email. Only use the data for a legitimate purpose, and ask a lawyer if you are unsure. You can read more in Is web scraping legal?

LinkedIn Profile Scraper + Email Finder is an independent tool. It is not affiliated with, endorsed by or sponsored by LinkedIn or Microsoft.

What happens if a profile can't be scraped?

The run continues with the other profiles, and the run report lists every profile or name that gave no row, with the reason (for example, a profile that does not exist).

Something isn't working. What should I do?

Open the Issues tab and tell us the profile and what you expected. We usually reply within a day.

Scrape more LinkedIn data

ActorWhat it gets
LinkedIn People Search ScraperFind people by title, company and location
LinkedIn Company Employees ScraperEmployees of any company
LinkedIn Posts ScraperPosts of profiles and company pages
LinkedIn Post Search ScraperPosts by keyword
LinkedIn Jobs ScraperJob postings with salaries

⭐ Your feedback

Ideas, missing fields or problems: open the Issues tab and we'll take a look. If LinkedIn Profile Scraper + Email Finder saved you time, a short review on the Reviews tab helps other people find it.