All articlesResponsible data use

How to scrape LinkedIn without getting your account banned

Staying unbanned is not a detection problem, it is an architecture problem. If retrieval runs through an account, a session, or a cookie, that account is part of your infrastructure — and enforcement lands on it.

Data flow diagram: public professional data passing through filters and an API layer, returning structured profile, company, and job records.

Scraping LinkedIn without getting banned is not a question of smarter bots, slower request rates, or better proxies. Any method that runs through your account, your browser session, or your cookies ties data collection to that account — which is exactly what enforcement acts on.

The lowest-exposure approach is not to hide the activity better. It is to take the account out of the retrieval path entirely: call a public professional data API that returns structured profile, company, and job records without a login, a cookie, or a browser to keep alive.

What LinkedIn can actually do to an account

LinkedIn can restrict an account when it identifies scraping, unauthorized automation, fake accounts, or inauthentic automated activity under its User Agreement. Its account-restriction guidance and prohibited-software policy both state that automated activity can lead to temporary or permanent restriction.

"Ban" is an umbrella term for a ladder of outcomes, and most teams meet the lower rungs first:

  • An automated-activity warning.
  • A cap on profile views or search results.
  • A temporary feature restriction on messaging or connection requests.
  • An identity verification request.
  • Temporary suspension.
  • Permanent loss of the account.

The operational risk is account dependency. Once collection depends on a personal account, that account is infrastructure — and a password change, a logout, a verification prompt, or a restriction stops the pipeline. Most teams discover this when the person whose account it was leaves the company.

What the terms actually say

The User Agreement

Section 8.2 prohibits developing, supporting, or using scripts, robots, crawlers, browser plug-ins, or other processes to scrape or copy LinkedIn services, profiles, and other data, and separately prohibits bypassing access controls or usage limits on search results, profiles, and pages. That covers more than a conventional scraper:

  • Browser extensions that extract profile fields.
  • Profile scraper tools and bots that open search results automatically.
  • Software that downloads connections or automates connection requests.
  • Scripts that copy data from company pages or collect postings at scale.

LinkedIn also states that it does not permit fake accounts or services generating fake engagement, so a dedicated secondary account does not resolve the policy question — it just moves which account absorbs the enforcement.

Extensions are not a loophole

An extension feels different because it runs inside the normal interface. Technically it is the strongest form of account coupling: it reads pages, extracts fields, and sometimes sends requests from inside an authenticated session, which is the position LinkedIn's prohibited-software policy names directly. The same applies whether the pages are search results, Sales Navigator, Recruiter, profiles, company pages, event attendee lists, or job pages. Paying for Sales Navigator or Recruiter buys access to those interfaces; it does not authorize bulk extraction from them.

Crawling, permission, and four different access models

LinkedIn publishes separate crawling terms for approved automated crawling. They require approved crawlers to use their true IP address and user-agent identity and prohibit masking or manipulating either. That is worth sitting with, because it inverts the standard advice: rotating proxies and spoofed user agents are not a route to permission, they are the opposite of the conditions under which permission is granted.

  • Manual use of the interface as a member.
  • Approved crawling with express permission, under the crawling terms.
  • The official API, authorized per member through OAuth, with most products behind partner approval.
  • Unofficial public data APIs, which are third-party services and not LinkedIn integrations.

The fourth is where EnvoAPI sits, and the distinction matters enough that we wrote it up separately in official versus unofficial LinkedIn APIs. An unofficial public data API must never be presented as official or authorized access.

Which methods put the account at risk

Exposure tracks one variable: whether retrieval needs an account, a session, or a cookie belonging to a real member.

Account exposure by method
MethodNeeds an accountNeeds a sessionAutomated activityExposure
Manual researchYesYesNoLower
Browser extensionUsuallyYesOftenHigh
Cookie-based scraperYesIndirectlyYesHigh
Automated browser botUsuallyYesYesHigh
Self-hosted scraperSometimesSometimesYesMedium to high
Public data APINoNoNone on your sideLower

Manual research

Reviewing profiles and recording fields by hand is the least automated option and does not scale: collection is slow, formatting is inconsistent, and verification is manual. It is a reasonable answer for a small research task, and it does not exempt anyone from platform terms or privacy obligations.

Browser extensions

An extension operating in an active session depends on an authenticated account, runs its activity through the interface, stops the moment a restriction lands, and can see whatever the session can see. That last property is also a security question: an extension with access to your session has access to more than the fields you wanted.

Cookie-based scrapers

Handing a session cookie to a scraper makes credentials part of the pipeline. The failure modes are credential exposure, third-party access to the session, expiry, verification prompts, password changes, and downtime whenever any of those fire. A session cookie is not an API key and should not be handled like one.

Prospecting automation

Tools that combine extraction with connection requests, messages, or profile visits generate far more platform interaction than collection alone, and the User Agreement addresses automated contact and messaging separately. Evaluate the two as different activities: whatever your data source, it is not permission to automate outreach.

Why sessions, cookies, and proxies add risk

Attribution

Activity inside a logged-in session is attributable to that member. The account stops being an identity and becomes collection infrastructure — with none of the properties you want from infrastructure.

A single point of failure

Logout, password change, verification prompt, platform limit, temporary restriction, permanent suspension: any one of them stops the pipeline, and none of them are under your control or on your schedule.

Credential and data exposure

Sharing cookies or credentials with a vendor is an access-control decision, not a convenience. What comes back is personal data about identifiable people, which brings its own requirements for storage, processing, sharing, and deletion.

False confidence from evasion

Rotating proxies, changing user agents, randomising intervals, simulating scrolling, capping views per hour — none of these establish a recognised safe threshold. There is no published allowance of 100 profiles an hour or 200 a day for unauthorized collection, and the crawling terms explicitly forbid the masking these techniques depend on. A number that has worked so far is not a limit; it is an observation.

Collecting public data responsibly

Public visibility is one input to a decision, not the whole of it. A profile can carry job title, employer, location, education, experience, and skills; a company page carries industry, size, headquarters, and description; a job page carries title, location, employment type, and description. None of that makes the data unrestricted.

Write the purpose down first

  • Which fields you collect, and why each one is needed.
  • The business purpose and the jurisdictions involved.
  • The retention period, and what triggers deletion.
  • Who and what receives the data downstream.
  • How correction, opt-out, and deletion requests are handled.

CRM enrichment, lead qualification, company research, recruiting research, job-market analysis, and sales intelligence are all workable purposes. "We might need it later" is not.

Take fewer fields

Minimisation is the cheapest compliance control available, and it usually improves the data too — fewer fields means fewer things to keep accurate.

Fields that are usually enough
WorkflowFields that typically carry it
Sales and prospectingProfile URL, name, job title, company, location
Account enrichmentCompany name, domain, industry, employee range, headquarters, description
Job-market analysisJob title, company, location, employment type, posting date, status

Contact data is a separate decision with its own source, accuracy, and outreach obligations. Its presence in a dataset does not discharge consent, transparency, or marketing-law duties.

The KASPR case is the one to read

In December 2024 France's data protection authority fined KASPR €240,000. The product was a paid browser extension that collected professional contact details from LinkedIn into a database of roughly 160 million contacts. The regulator found it had collected details from members who had restricted visibility to their first- and second-degree connections, retained data for up to five years after each update, and — until 2022 — had not informed people at all, then did so only in English.

Three things make it worth reading in full. It turns on a browser extension, which is the architecture most "safe scraping" guides recommend. It draws the line at visibility settings rather than at the login wall: reachable through an account is not the same as public. And two of the three findings — retention and transparency — had nothing to do with collection at all.

What hiQ did and did not settle

The 2022 Ninth Circuit decision in hiQ Labs v. LinkedIn concerned public profile data and whether the Computer Fraud and Abuse Act applied, at the preliminary-injunction stage. The court found hiQ had raised serious questions about whether accessing public profiles is unauthorized access under the CFAA. It did not establish that public-data scraping is lawful in general, and it did not resolve contract, privacy, copyright, state-law, or data-protection claims — which is where most of the actual exposure lives.

Reducing risk in the workflow

The lever is architecture and governance, not detection avoidance.

Take personal accounts out of the pipeline

  • No dependency on an employee's account.
  • No customer session cookies, and no stored passwords.
  • No secondary or fake accounts.
  • No automation inside a logged-in browser.
  • No collection bundled with automated outreach.

Separate retrieval from member activity

Two architectures
VerdictShape
PreferApplication → API request → structured response → internal workflow
AvoidPersonal account → login → browser automation → scraped markup → custom parser

The first has one failure mode you can handle in code. The second has as many as the platform has controls, and each one arrives as a parsing bug rather than an error you can catch.

A ten-point governance checklist

  • No personal account in the pipeline.
  • No shared session cookies.
  • No fake or secondary accounts.
  • No automated connection requests or messages.
  • Public professional data only.
  • A documented business purpose.
  • The minimum fields that purpose needs.
  • A defined retention period.
  • A working opt-out and deletion path.
  • Scheduled accuracy and access reviews.

Account-based scraping versus API access

The two models side by side
FactorAccount-based scraperAPI access
Your LinkedIn loginOften requiredNot required
Browser sessionUsually requiredNot required
Session cookiesMay be requiredNot required
Automation on the siteCommonNone on your side
Typical outputMarkup, CSV, or parsed fieldsStructured JSON
Account dependencyHighLow
MaintenanceBrowser and selector changesEndpoint integration
Best fitSmall or one-off extractionRecurring workflows
Responsibility for useYoursStill yours

That last row is deliberate. An API changes the retrieval architecture; it does not move responsibility for what you do with the result.

What an API changes

  • Credentials leave the pipeline — no login, no cookie, no session to keep alive.
  • No browser automation on your side, and nothing to repair when markup changes.
  • Consistent structured responses, so failures surface as errors your code can handle.
  • Rate limits you can plan against instead of thresholds you discover by tripping them.

What an API does not change

  • It does not make the data unrestricted, or guarantee compliance in your jurisdiction.
  • It is not permission to automate outreach.
  • It does not reach private messages, login-gated pages, or sensitive personal data.
  • It does not move downstream responsibility off your team.

A provider that requires no account, cookie, or session genuinely reduces account-level exposure. Any provider claiming it eliminates legal, privacy, or data-quality risk is overselling, and that claim is itself a signal about the provider.

When a data API is the right answer

Reach for one when the requirement is repeatable structured data rather than a one-off extraction — profile lookups from public URLs, CRM enrichment, domain-to-company resolution, firmographics, structured postings, and job-market analysis, all with predictable responses and one place to handle errors.

What each data type supports
Data typeWorkflows it carries
Profile dataProfile enrichment, candidate research, identity resolution, job-title normalisation
Company dataAccount enrichment, company research, segmentation, firmographic analysis
Job dataJob monitoring, recruiting intelligence, hiring-trend analysis, job-board enrichment

The tools people compare, and the question to ask

Names that come up in this search — Skrapp, Evaboot, PhantomBuster, Linked Helper, Dux-Soup, Datablist — span extensions, automation platforms, and data providers, and they are not interchangeable. Rather than rank them, ask each one the same question: does it need my LinkedIn login, my session, or my cookies to work?

If the answer is yes, your account is in the retrieval path and everything in this article applies. If the answer is no, that particular exposure is gone and the remaining questions are the ordinary ones about coverage, freshness, and terms.

The shape that holds up

LinkedIn restricts unauthorized scraping, extensions, bots, and automated activity. Workflows built on personal accounts, session cookies, and browser automation inherit that exposure by design, and no amount of proxy rotation or randomised timing changes what the architecture is.

EnvoAPI is an unofficial public professional data API: 47 documented endpoints across profiles, companies, search, jobs, and posts, called with one key in one header — no login, no cookies, no browser. The API documentation covers authentication, rate limits, errors, and pagination, and the free plan includes 100 credits, which is enough to run a real sample through it before changing anything.

What it does not do is decide your permitted fields, your business purpose, your retention period, your access controls, or your deletion process. Those stay yours whichever route you take — and they are what a regulator asks about.

FAQs about LinkedIn scraping and account risk

Is scraping LinkedIn against its terms of service?

LinkedIn's User Agreement, crawling terms, and help-centre policies restrict unauthorized scraping, automated crawling, and third-party tools that automate activity on its services. Section 8.2 of the User Agreement addresses scraping and copying directly, and separately prohibits bypassing access controls or usage limits.

Can LinkedIn permanently restrict an account for scraping?

Yes. LinkedIn states that automated inauthentic activity can result in temporary or permanent restriction. In practice the ladder usually starts lower — warnings, view caps, feature restrictions, or a verification request — before an account is lost entirely.

Is there a safe daily scraping limit?

No. LinkedIn publishes no universal allowance that protects an account, and figures like 100 profiles an hour or 200 a day circulate as folklore rather than as documented thresholds. A rate that has not triggered anything yet is an observation about the past, not a limit.

Should I use a secondary account for scraping?

No. A secondary account does not make prohibited automation permitted, and LinkedIn states it does not allow fake accounts or fake engagement. It only changes which account absorbs the enforcement, while adding a second policy problem.

Do proxies and rotating user agents make scraping safe?

No. They create no authorization and no guarantee. LinkedIn's crawling terms require approved crawlers to use their true IP address and user-agent identity and prohibit masking them, so these techniques run against the conditions under which crawling is actually permitted.

Is LinkedIn's official API the same as a public data API?

No. The official API authorizes access per member through OAuth, with most products behind partner approval. An unofficial public data API is a separate third-party service and should never imply official authorization or affiliation.

What profile data can an API return?

Depending on source coverage, typically name, headline, current role, company, location, experience, education, and similar public professional fields. It should not promise private messages, login-gated pages, restricted contact data, or sensitive personal information — and a provider that does promise those is describing a different activity.

Is EnvoAPI an official LinkedIn API?

No. EnvoAPI is an unofficial API for structured public professional profile, company, and job data. It is not a LinkedIn partner, it is not endorsed by LinkedIn, and it does not provide official LinkedIn API access.

Start building

Put this into practice with one API key.

Connect profile, company, job, and search data to your product, CRM, or data warehouse through one documented API with clean JSON responses.

100 free credits · No credit card required · One header to set up