LinkedIn Jobs Scraper
Pricing
from $1.50 / 1,000 results
LinkedIn Jobs Scraper
LinkedIn Jobs Scraper pulls job listings from any LinkedIn job search URL. Get title, company, location, salary, posted date, applicant count, seniority, benefits and apply link. Export to JSON, CSV or Excel for recruiting, job market research and lead generation. No login needed.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Alpha Scraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
LinkedIn Jobs Scraper
LinkedIn Jobs Scraper turns any LinkedIn job search URL into a structured dataset of job postings. Paste a LinkedIn search link, choose how many jobs you want, and the Actor returns titles, companies, locations, salaries, posting dates, applicant counts, seniority levels, employment types and full job descriptions.
It works on public LinkedIn job pages, so you do not need a LinkedIn account, cookies or login. LinkedIn Jobs Scraper is built for recruiters, market researchers, sales teams and job-board builders who want to follow hiring demand without copying listings by hand.
The easiest way to start is to run a search on LinkedIn, copy the address and let LinkedIn Jobs Scraper do the collecting. Results export as JSON, CSV or Excel straight from Apify.
📌 LinkedIn Jobs Scraper at a glance
- Platform: LinkedIn public job search
- Input: one or more LinkedIn job search URLs
- Output: one dataset item per job posting
- Login required: no
🔹 LinkedIn Jobs Scraper – Key Features
LinkedIn Jobs Scraper focuses on the job data that matters for hiring and market research:
- Any job search URL – copy a LinkedIn search link with your keywords, location and supported filters.
- Several searches per run – add multiple LinkedIn search URLs and collect jobs from each one.
- Full job details – every LinkedIn job includes the description as text and HTML, plus seniority, employment type, job function and industries.
- Salary and applicants – pay information and the applicant count are captured whenever LinkedIn shows them.
- Optional company details – switch on company enrichment to add website, slogan, description, employee count, size, headquarters and address.
- Split by city – break one LinkedIn search into city searches for a chosen country and go beyond the roughly 1,000 jobs LinkedIn returns per search.
- No duplicates – LinkedIn Jobs Scraper returns each job once per input URL.
- Flexible export – download your LinkedIn jobs data as JSON, CSV or Excel, or read it through the Apify API.
📊 LinkedIn Jobs Scraper – What Data You Can Extract
Each dataset item describes one job posting. LinkedIn Jobs Scraper leaves a field empty when LinkedIn does not show it, so your columns stay consistent from run to run.
| Group | Fields |
|---|---|
| Job basics | id, title, companyName, location, link |
| Dates | postedAt (as shown on LinkedIn, such as "2 days ago"), postedDate |
| Description | descriptionText, descriptionHtml |
| Job criteria | seniorityLevel, employmentType, jobFunction, industries |
| Pay | salary, salaryInfo, benefits |
| Application | applyUrl, applicantsCount |
| Company | companyLinkedinUrl, companyLogo |
| Hiring team (when shown) | jobPosterName, jobPosterTitle, jobPosterPhoto, jobPosterProfileUrl |
| Company details (optional) | companyWebsite, companySlogan, companyDescription, companyEmployeesCount, companySize, companyHeadquarters, companyAddress |
| Run context | inputUrl, refId, trackingId |
In short, LinkedIn Jobs Scraper gives you the role, the employer, the pay and the application path in a single record.
🚀 How to Use LinkedIn Jobs Scraper
You can start LinkedIn Jobs Scraper from the Apify Console in a few minutes:
- Step 1: Open the LinkedIn jobs page, enter keywords and a location, and apply the filters you want.
- Step 2: Copy the full address from your browser and paste it into LinkedIn Job Search URLs.
- Step 3: Set Maximum Number of Jobs to control how many jobs you collect per URL.
- Step 4: Optionally enable Scrape Company Details or Split search by city locations.
- Step 5: Click Start. LinkedIn Jobs Scraper collects the jobs, then you can open the Output tab to preview, filter and download them.
💡 Tip: Start with the default of 5 jobs to confirm the search is right, then raise the limit.
🎯 LinkedIn Jobs Scraper – Use Cases
LinkedIn Jobs Scraper fits any workflow that starts with a list of open roles:
- Recruiting and sourcing – use LinkedIn Jobs Scraper to see which employers hire for a role on LinkedIn and how they describe it.
- Job market research – compare salaries, seniority levels and employment types across LinkedIn listings.
- Lead generation – find companies that are actively hiring and enrich them with LinkedIn company details.
- Job boards and aggregators – feed fresh LinkedIn postings into your own site or database.
- Competitor monitoring – watch which teams a rival is growing through its LinkedIn job ads.
- Salary benchmarking – collect the pay ranges that employers publish on LinkedIn.
- Trend reports – schedule LinkedIn Jobs Scraper weekly and compare how demand for a skill changes over time.
🧩 How LinkedIn Jobs Scraper Works
When a run starts, LinkedIn Jobs Scraper reads each search URL, keeps the search filters and passes them to LinkedIn's public job search. It pages through the results, skips jobs it has already seen, and opens each job's public page to read the full details.
If company enrichment is on, the Actor also reads each company page once and reuses the result for later jobs from the same employer. Finished LinkedIn jobs are saved to the dataset as each page of results is processed, so you can watch data appear during the run.
If LinkedIn temporarily refuses a request, LinkedIn Jobs Scraper retries it before moving on. A job whose page cannot be loaded is still returned with the basic details from the search results.
🔎 How to Scrape LinkedIn Jobs From a Search URL
To scrape LinkedIn jobs for a role and city, paste a search link like the one below. The Actor reads the keywords and location from the URL and pages through the public results.
{"urls": ["https://www.linkedin.com/jobs/search/?keywords=data%20analyst&location=London"],"count": 50,"scrapeCompany": true}
Only job search URLs are supported. Links to a single job or a company page are skipped with a warning.
⚙️ LinkedIn Jobs Scraper – Input
All settings are available in the Console form and through the Apify API. Only urls is required. LinkedIn Jobs Scraper checks every URL before it starts and skips anything that is not a LinkedIn job search link. If no valid link remains, the run ends with an error message.
| Field | Type | Default | What it does |
|---|---|---|---|
urls | array | 2 prefilled searches | Required. LinkedIn job search URLs to scrape. |
count | integer | 5 | Maximum jobs per URL. LinkedIn returns about 1,000 jobs per search. |
scrapeCompany | boolean | false | Adds company details. Each company page is fetched once per run, so runs are slower. |
splitByLocation | boolean | false | Splits the search into city searches and replaces the location in your URL. |
splitCountry | string | – | Country whose cities are used for splitting. Needed when splitting is on. |
proxyConfiguration | object | preconfigured | Optional proxy settings. The default works for most runs. |
⚠️ Filters: LinkedIn applies keywords, location, date posted, company, Easy Apply and early applicant filters to logged-out visitors. Work type, experience level, job type, salary, industry and sort order are ignored by LinkedIn and will not narrow results.
Countries without a built-in city list are searched as a whole. More than 50 countries, including the US, UK, India, Germany and Australia, have city lists. When splitting, cities are searched one after another until the job limit is reached, and a job found in several cities is returned once.
📦 LinkedIn Jobs Scraper – Output
LinkedIn Jobs Scraper saves one record per job to the default dataset. Here is a shortened example:
{"id": "4384671812","link": "https://www.linkedin.com/jobs/view/cashier-at-the-home-depot-4384671812?position=1&pageNum=0&refId=MsVgfnUBR2fDZT6xK3muwQ%3D%3D&trackingId=mIu14ypa2IKhQ0RsykKfpA%3D%3D","title": "Cashier","companyName": "The Home Depot","companyLinkedinUrl": "https://www.linkedin.com/company/the-home-depot","companyLogo": "https://media.licdn.com/dms/image/v2/C4E0BAQHzR2llYqUBtg/company-logo_100_100/company-logo_100_100/0/1630656428961/the_home_depot_logo?e=2147483647&v=beta&t=EZjw3CxR9dQa_S8IcVWwrJLtZ7v0iwT8gQFC8QOkvJw","location": "Syosset, NY","salaryInfo": ["$17.50/hr - $18.50/hr"],"postedAt": "7 months ago","postedDate": "2026-03-14","descriptionHtml": "<div class=\"show-more-less-html__markup show-more-less-html__markup--clamp-after-20\n relative overflow-hidden\">\n 78092BR<br><br><strong>Job Description<br><br></strong><strong>Position Purpose:<br><br></strong>Cashiers play a critical customer service role by providing customers with fast, friendly, accurate and safe service. They process Checkout and/or Return transactions, as well as monitor and maintain the Self-Checkout area. They proactively seek product/project knowledge to provide customers with information and identify selling opportunities. They follow all policies and procedures to ensure that shrink is minimized. A Head Cashier will position Cashiers and support them by expediting price checks, approving Point of Sale transactions and markdowns for mainline registers, Self-Checkout, Returns, Pro Desk, Special Services, and Tool Rental. They provide first level escalation for customer issues and assist in the supervision, coaching and training of other Front End Associates by participating in the training of new Cashiers and utilizing all available tools to coach and develop other Cashiers. The preferred qualification for a Head Cashier is 1+ years of Cashier experience.\n </div>","applicantsCount": "52 applicants","applyUrl": "https://www.linkedin.com/jobs/view/cashier-at-the-home-depot-4384671812?position=1&pageNum=0&refId=MsVgfnUBR2fDZT6xK3muwQ%3D%3D&trackingId=mIu14ypa2IKhQ0RsykKfpA%3D%3D","salary": "$17.50/hr - $18.50/hr","descriptionText": "78092BR\n\nJob Description\n\nPosition Purpose:\n\nCashiers play a critical customer service role by providing customers with fast, friendly, accurate and safe service. They process Checkout and/or Return transactions, as well as monitor and maintain the Self-Checkout area. They proactively seek product/project knowledge to provide customers with information and identify selling opportunities. They follow all policies and procedures to ensure that shrink is minimized. A Head Cashier will position Cashiers and support them by expediting price checks, approving Point of Sale transactions and markdowns for mainline registers, Self-Checkout, Returns, Pro Desk, Special Services, and Tool Rental. They provide first level escalation for customer issues and assist in the supervision, coaching and training of other Front End Associates by participating in the training of new Cashiers and utilizing all available tools to coach and develop other Cashiers. The preferred qualification for a Head Cashier is 1+ years of Cashier experience.","seniorityLevel": "Not Applicable","employmentType": "Full-time","jobFunction": "","industries": "Consumer Services","benefits": [],"refId": "MsVgfnUBR2fDZT6xK3muwQ==","trackingId": "mIu14ypa2IKhQ0RsykKfpA==","inputUrl": "https://www.linkedin.com/jobs/search/?position=1&pageNum=0"}
Company fields appear only when Scrape Company Details is on. Hiring-team fields appear only when LinkedIn shows a job poster. You can view the same data as a table in the Output tab or download it in any Apify export format. Because LinkedIn Jobs Scraper uses stable field names, runs are easy to merge in a spreadsheet, database or BI tool.
📝 Good to know
applyUrlfalls back to the LinkedIn job link when the external apply link is not public.benefitslists benefit bullet points found in the description, so it is often empty.salarycomes from LinkedIn's pay data or a clear range in the description.
💰 LinkedIn Jobs Scraper – Pricing
LinkedIn Jobs Scraper is billed per result, so each job saved to the dataset counts toward your cost. The Maximum Number of Jobs setting is therefore your main cost control.
See the Pricing tab on this Actor's page for the current rate. If you want a hard cap, set a maximum cost per run in Apify. LinkedIn Jobs Scraper stops as soon as that cap is reached.
✅ Tips and Best Practices for LinkedIn Jobs Scraper
Get cleaner results
- Test a new search with a small
count, then scale up.- Use the date posted filter in the URL to collect only recent LinkedIn postings.
- Leave Scrape Company Details off unless you need it, because it adds extra requests.
- For large searches, turn on Split search by city locations and pick a country.
- Schedule LinkedIn Jobs Scraper in Apify to monitor new LinkedIn postings every day or week.
Keep one topic per search URL. LinkedIn Jobs Scraper works best with focused searches, which are easier to analyse than one broad query, and the inputUrl field tells you which search each job came from.
❓ Frequently Asked Questions
🤔 What is LinkedIn Jobs Scraper?
LinkedIn Jobs Scraper is an Apify Actor that collects public job postings from LinkedIn job search URLs and returns them as structured data.
👥 Who uses LinkedIn Jobs Scraper?
Recruiters, HR analysts, sales teams, researchers, job-board owners and developers who need LinkedIn job data in a structured format.
🔐 Can I use LinkedIn Jobs Scraper without logging in?
Yes. The Actor reads public job pages, so no account, cookies or password are needed.
🔢 How many jobs can LinkedIn Jobs Scraper collect per search?
LinkedIn returns about 1,000 jobs for one search. To collect more, enable splitting by city and choose a country. The Maximum Number of Jobs limit then covers the whole URL.
🧭 Which filters does LinkedIn Jobs Scraper support?
Keywords, location, date posted, company, Easy Apply and early applicant filters work. LinkedIn ignores other filters for logged-out visitors, and the Actor logs a warning when it finds them in your URL.
💵 Does LinkedIn Jobs Scraper extract salary information?
Yes, when LinkedIn shows pay on the job or a clear salary range appears in the description. Otherwise salary stays empty.
🏙️ How do I scrape LinkedIn jobs by city?
Put the city in the LinkedIn search URL, or turn on Split search by city locations to search the major cities of a country one by one.
📁 Can I export LinkedIn Jobs Scraper results to Excel or CSV?
Yes. Open the dataset and choose Excel, CSV, JSON or another format, or fetch the data through the Apify API.
⏰ Can I run LinkedIn Jobs Scraper on a schedule?
Yes. Use Apify schedules to run it daily or weekly and connect the results to your tools through integrations.
🔌 Can I start LinkedIn Jobs Scraper through the Apify API?
Yes. Call the Actor with the same JSON input shown above, then read the dataset when the run finishes. This makes it easy to plug LinkedIn Jobs Scraper into your own apps and workflows.
📉 Why did I get fewer LinkedIn jobs than my limit?
LinkedIn may have fewer matching jobs, or it may stop returning results before your limit. Narrow the search or split it by city.
⚖️ Is it allowed to scrape LinkedIn job data?
The Actor collects only publicly visible job information. You remain responsible for using the data lawfully and in line with LinkedIn's terms.
📬 Support
Questions, feature requests or a LinkedIn search that does not behave as expected? Share the search URL and your run link so the issue with LinkedIn Jobs Scraper can be reproduced.
- Contact me by email: alphascraper69@gmail.com