LinkedIn Profile Scraper - People Search, No Login avatar

LinkedIn Profile Scraper - People Search, No Login

Pricing

from $3.00 / 1,000 per-run start fees

Go to Apify Store
LinkedIn Profile Scraper - People Search, No Login

LinkedIn Profile Scraper - People Search, No Login

LinkedIn scraper for public profiles. Search people by role and country, or paste profile URLs, and get name, role, current employer, location, follower and connection counts, About text and education. No login, no cookies. Pay only for profiles read.

Pricing

from $3.00 / 1,000 per-run start fees

Rating

0.0

(0)

Developer

SR

SR

Maintained by Community

Actor stats

0

Bookmarked

8

Total users

6

Monthly active users

13 days ago

Last modified

Share

LinkedIn Profile Scraper: people search without cookies or login

This LinkedIn profile scraper reads public profiles. Describe the people you are looking for, like ecommerce manager netherlands, or paste profile URLs you already have, and get one row per person: name, role, current employer, location, follower and connection counts, About text and education. Use it to scrape LinkedIn profiles for lead lists, recruiting research or to refresh a CRM.

No LinkedIn account, no session cookie, nothing copied from your browser. Your own profile is never at risk because it is never used.

What you get

FieldWhat it holds
name, first_name, last_nameThe person's name as shown on the profile
headlineTheir role, for profiles found through a search
current_companyCurrent employer, from the profile page
locationCity, region and country as they wrote it
followers, connectionsCounts as displayed, such as 500+
aboutThe About text
educationSchools, with degree and years where shown
positionsPast and current employers with location
photo_url, profile_url, slugPicture and canonical link
search, search_title, search_snippetThe phrase that found this person and what the index showed
fetched, errorWhether the profile page was read, and why not if it was not

Every row is public profile data: what anyone sees when they open a LinkedIn profile without signing in. There are no email addresses or phone numbers in the output, and private or restricted profiles stay private.

The one thing LinkedIn does not show

Job titles per position are not available. LinkedIn sends that field empty to visitors who are not signed in, on every position of every profile we tested, and it withholds the dates too. So positions tells you where someone worked, not what they were called there.

That is why headline matters. The search index kept the person's role, the live page carries the employer, and the row has both. One search returned "Edo Voets - E-Commerce Manager" while the live page for the same person says "Moët Hennessy Nederland BV". Neither half is complete on its own.

Each row also carries titles_available, normally false. If LinkedIn ever starts serving titles, that flag turns true and the column fills itself.

Input

FieldTypeDefaultWhat it does
searcheslistempty; form prefill: ecommerce manager netherlandsOne phrase per line, each a people search in the public profile index
profileUrlslistemptyProfiles you already have, as full links or bare slugs. Combine with searches or use alone
maxProfilesinteger50Stop after this many profiles (1 to 1.000). Also the cost ceiling
searchPagesinteger3How deep to go per phrase (1 to 10). Each page adds roughly seven to eleven profiles
countrystringnlTwo-letter code. Picks the search market and the language LinkedIn serves the profile in
languagestringenTwo-letter language code for the search
concurrencyinteger3Profiles read at once (1 to 8)
attemptsinteger5Retries for a profile that refuses before it is marked blocked

Give at least one search phrase or one profile URL. The form prefills a search phrase; API runs without either field return bad_input.

Output example

{
"profile_url": "https://www.linkedin.com/in/williamhgates",
"slug": "williamhgates",
"handle": "williamhgates",
"name": "Bill Gates",
"first_name": "Bill",
"last_name": "Gates",
"current_company": "Gates Foundation",
"location": "Seattle, Washington, United States",
"followers": "41M",
"connections": "8",
"followers_count": 41000000,
"connections_count": 8,
"about": "Chair of the Gates Foundation. Founder of Breakthrough Energy. Co-founder of Microsoft…",
"positions": [
{
"title": null,
"company": "Gates Foundation",
"location": null,
"dates": null,
"is_current": true
}
],
"position_count": 1,
"education": [
{
"school": "Harvard University",
"degree": null,
"dates": "1973 - 1975"
}
],
"photo_url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_200_200/B56ZRi8g.aGsAY-/0/1736826818802?e=2147483647&v=beta&t=bKWfN6UwwtiCqFWsG7rBELbd48qJOAMLdxhBzzkJV0k",
"titles_available": false,
"search": null,
"headline": null,
"search_title": null,
"search_snippet": null,
"fetched": true,
"error": null,
"duration_seconds": 3.07,
"position": 1,
"source": "linkedin-profile-scraper",
"platform": "linkedin",
"fetched_at": "2026-10-02T18:43:58.546Z"
}

This is an actual profile row retrieved on 2 October 2026 with the profile URL input. Fields from the search index appear when using people searches.

The original followers and connections fields remain displayed strings. Numeric equivalents are available as followers_count and connections_count; a displayed 500+ becomes the lower bound 500. handle is the decoded public profile slug, and fetched_at records when the row was read.

How to search LinkedIn profiles well

Write the phrase the way the person would describe themselves, because that is what the index matched on. head of procurement retail germany works; decision maker in supply chain does not, because nobody writes that on their profile. Add the country or city to the phrase and set country to match.

A Dutch profile read with country: nl comes back with Dutch labels. Set the country of the people you are after, not your own.

Use cases

Lead lists for B2B sales. Search ecommerce manager netherlands or head of marketing fashion germany, and you get names, current employers and roles in one table, ready to match against your CRM. Because the employer comes from the live page and the role from the index, you can check a lead is still at the company before you write to them.

Recruiting and talent mapping. Run a phrase per role and region, keep location, education and positions, and you have a map of who does a job in a market and where they came from, without a Recruiter seat.

Enriching a list you already have. Paste the profile URLs from your CRM or a spreadsheet into profileUrls. Each comes back with current employer, location, follower count and About text, so stale records show up as a changed current_company.

Creator and executive research. Follower counts and About texts for a list of named people, for influencer shortlists or for a briefing before a meeting.

How this LinkedIn profile scraper compares

This actorharvestapi/linkedin-profile-scraperharvestapi/linkedin-profile-search
Per profile$0,004$0,004$0,004 (Free plan)
Search pagesnot billedsearch is a separate actor$0,10 per page (Free plan)
Run start$0,003nonenone
Emailsno$0,01 per profile with email$0,01 per profile with email
Cookies or login needednonono

Prices from the Apify Store on 2 October 2026. Where they are ahead: they have far more users and reviews, and they sell email lookup, which this actor does not. Where this one fits: people search where you pay per profile read and nothing for the search pages.

Pricing

Pay per event. profile costs $0,004 for each profile actually read, $4,00 per 1.000, and run_start costs $0,003 once per run. Profiles that could not be read are not billed: they still appear as rows with fetched: false and what the index knew. You only pay for results you receive, with no per-compute-unit charges.

On the Apify Free plan a run returns at most 10 profiles, at the same prices. On a paid Apify plan maxProfiles applies in full, up to 1.000 per run.

Limits and gotchas

  • No job titles or dates per position. See above; headline is the role.
  • headline only comes with search. A profile passed as a URL has no index entry attached, so its row has the employer but no headline.
  • Access can change without warning. If a run that worked last week returns blocked for every profile, LinkedIn changed something; it is not your phrase. Compare profilesRead with profilesFound in the run summary.
  • Raise attempts if some profiles come back blocked.
  • Private and restricted profiles are not read, by design.
  • Search depth is bounded by the index: roughly seven to eleven profiles per page, up to ten pages per phrase.
Error codeMeaning
blockedThe profile could not be read after every attempt
search_failedThe index could not be searched for that phrase
no_resultsNothing matched and no URLs were given
bad_inputNeither a search phrase nor a URL was given

FAQ

Can I scrape LinkedIn profiles without cookies? Yes. This actor needs no LinkedIn account and no session cookie, so there is no account of yours to get restricted.

Can I search LinkedIn people by job title and country? Yes, as a phrase: ecommerce manager netherlands. Each phrase runs against the public profile index and returns the matching profiles.

Does this LinkedIn scraper return email addresses? No. It returns public profile data only.

Why are job titles missing from the positions? LinkedIn does not send them to visitors who are not signed in. The role you get is the headline from the search index.

Is this a LinkedIn profile API? It works as one. Start a run through the Apify API with your phrases or profile URLs and read the rows from the dataset as JSON or CSV. It does not use the official LinkedIn API, which needs a partner agreement and does not offer people search to outsiders.

How many profiles can one run return? Up to maxProfiles, at most 1.000. A search phrase yields roughly seven to eleven profiles per page and up to ten pages, so use several phrases for larger lists.

Is there a free LinkedIn scraper option? You can try this one with the monthly credit that comes with an Apify Free plan account. Free-plan runs return up to 10 profiles each, so you can check the output on your own phrases before you upgrade. Search pages and unread profiles cost nothing on any plan.

Can I pass a list of LinkedIn profile URLs? Yes, in profileUrls, as full links or bare slugs, with or without searches in the same run.