LinkedIn Jobs Scraper avatar

LinkedIn Jobs Scraper

Pricing

from $0.03 / 1,000 result extracteds

Go to Apify Store
LinkedIn Jobs Scraper

LinkedIn Jobs Scraper

Scrape public LinkedIn job postings by keyword, location, and start URLs. Export titles, companies, locations, descriptions, criteria, and direct job links.

Pricing

from $0.03 / 1,000 result extracteds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 hours ago

Last modified

Share

Scrape public LinkedIn job postings by keyword, location, and LinkedIn jobs search URLs.

Find roles, companies, descriptions, seniority, employment type, industries, applicant text, and direct job URLs in a clean dataset.

Use it for recruiting research, job aggregation, market maps, compensation research, lead discovery, and labor-market tracking.

Job data workflow

Use LinkedIn Jobs Scraper for marketplace job postings by keyword and location.

Use Workday Jobs Scraper and Greenhouse Jobs Scraper for company ATS boards.

Join outputs by company, title, location, and job URL to build recruiting research, hiring-signal, and labor-market datasets.

What does LinkedIn Jobs Scraper do?

LinkedIn Jobs Scraper collects public job posting data from LinkedIn Jobs.

You can search by keyword and location.

You can also paste public LinkedIn jobs search URLs.

The Actor saves one dataset row per job posting.

Each row includes the job ID, title, company, location, posting age, job URL, and optional detail fields.

When detail fetching is enabled, the Actor also collects the public description and job criteria shown by LinkedIn.

Who is it for?

Recruiters use it to monitor hiring demand by role and location.

Talent teams use it to build target company lists.

Job boards use it to collect public postings for aggregation workflows.

Labor-market analysts use it to track skill demand.

Sales teams use it to find companies hiring for roles related to their product.

Investors use it to watch hiring velocity at portfolio or target companies.

Students and job seekers use it to export matching roles for comparison.

Why use this Actor?

✅ Export public LinkedIn jobs into structured JSON, CSV, Excel, or API responses.

✅ Search multiple keywords in one run.

✅ Filter by location, date posted, workplace type, and sort order.

✅ Include or skip descriptions depending on speed and cost needs.

✅ Deduplicate jobs by LinkedIn job ID across searches.

✅ Use Apify integrations, webhooks, schedules, and datasets.

Data you can extract

FieldDescription
jobIdLinkedIn job identifier
titleJob title
companyNameCompany name
companyUrlPublic company page URL when available
locationJob location text
postedAtTextPublic posted-age text
jobUrlDirect public LinkedIn job URL
descriptionPublic job description when detail fetching is enabled
employmentTypeEmployment type when visible
seniorityLevelSeniority level when visible
industriesIndustry text when visible
applicantsTextPublic applicant count text when visible
sourceSearchUrlSearch page that produced the job
scrapedAtISO timestamp for the scrape

How much does it cost to scrape LinkedIn jobs?

This Actor uses pay-per-event pricing.

You pay a $0.005 start fee per run and a tiered per-result fee for each saved job posting.

The BRONZE result price is $0.000051787 per job, which is about $0.051787 per 1,000 saved jobs before Apify account-tier discounts.

Higher Apify tiers receive lower per-result prices shown on the Pricing tab.

Keep maxItems low for quick tests.

Increase maxItems for production monitoring once your query is returning the roles you need.

How to use LinkedIn Jobs Scraper

  1. Open the Actor on Apify.

  2. Enter one or more keywords, such as software engineer or product manager.

  3. Add a location, such as United States, London, or Remote.

  4. Choose how many jobs to save.

  5. Decide whether to include job descriptions.

  6. Run the Actor.

  7. Download the dataset or connect it to your workflow.

Input options

Keywords

Use one or more job searches.

Examples:

  • software engineer
  • data analyst
  • nurse
  • sales development representative

Location

Use the location wording you would type into LinkedIn Jobs.

Examples:

  • United States
  • Canada
  • London
  • Berlin
  • Remote

Start URLs

You can paste public LinkedIn jobs search URLs.

This is useful when you already built a search in LinkedIn and want to run the same search on Apify.

Maximum jobs

maxItems caps the total jobs saved across all keywords and URLs.

Start with 10–25 jobs for a test run.

Use a larger value for scheduled monitoring.

Include job descriptions

When enabled, the Actor visits each public job detail page.

This adds fields such as description, employment type, seniority, industries, and applicant text.

Disable it if you only need fast search-card data.

Date posted

Choose any time, past 24 hours, past week, or past month.

Workplace type

Choose any, on-site, remote, or hybrid.

Sort by

Choose relevance or most recent.

Output example

{
"jobId": "4374834620",
"title": "Software Engineer (New Grads)",
"companyName": "Giga",
"companyUrl": "https://www.linkedin.com/company/gigaml",
"location": "New York, NY",
"postedAtText": "5 days ago",
"jobUrl": "https://www.linkedin.com/jobs/view/software-engineer-new-grads-at-giga-4374834620",
"description": "About Giga...",
"employmentType": "Volunteer",
"seniorityLevel": "Not Applicable",
"industries": "Software Development",
"applicantsText": "Over 200 applicants",
"sourceSearchUrl": "https://www.linkedin.com/jobs-guest/jobs/api/seeMoreJobPostings/search?...",
"scrapedAt": "2026-06-17T11:13:45.322Z"
}

Tips for better results

Use specific role keywords.

Use one region per run for cleaner datasets.

Use sortBy: recent for monitoring new roles.

Use datePosted: past24h for daily alerts.

Keep descriptions enabled when you need skills, requirements, or full text.

Disable descriptions when you only need company, title, and URL lists.

Common recruiting workflows

Track target companies hiring for AI, security, data, or sales roles.

Build lead lists of companies hiring roles that match your product.

Monitor remote job supply by title.

Compare hiring demand by geography.

Export jobs into an ATS enrichment workflow.

Market research workflows

Measure how often companies mention a skill in descriptions.

Track demand for roles across locations.

Compare industries hiring for a function.

Build weekly datasets for dashboards.

Detect companies expanding specific teams.

Integrations

Use Apify schedules to run daily or weekly.

Use webhooks to trigger downstream processing after each run.

Export to Google Sheets, Make, Zapier, Airtable, or your own API.

Use dataset API endpoints to pull the newest results into a dashboard.

Combine with enrichment Actors to add company websites, emails, or firmographic data.

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/linkedin-jobs-scraper').call({
keywords: ['software engineer'],
location: 'United States',
maxItems: 25,
includeDetails: true
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
client = ApifyClient('APIFY_TOKEN')
run = client.actor('fetch_cat/linkedin-jobs-scraper').call(run_input={
'keywords': ['software engineer'],
'location': 'United States',
'maxItems': 25,
'includeDetails': True,
})
print(run['defaultDatasetId'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~linkedin-jobs-scraper/runs?token=APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"keywords":["software engineer"],"location":"United States","maxItems":25,"includeDetails":true}'

MCP usage

Use this Actor from Claude Desktop, Claude Code, or any MCP-compatible client through Apify MCP.

MCP URL:

https://mcp.apify.com/?tools=fetch_cat/linkedin-jobs-scraper

Claude Code setup:

$claude mcp add apify-linkedin-jobs https://mcp.apify.com/?tools=fetch_cat/linkedin-jobs-scraper

Claude Desktop JSON config:

{
"mcpServers": {
"apify-linkedin-jobs": {
"url": "https://mcp.apify.com/?tools=fetch_cat/linkedin-jobs-scraper"
}
}
}

Example prompts:

  • "Find 50 recent remote data analyst jobs and summarize the most common tools."
  • "Scrape software engineer jobs in Berlin and group them by company."
  • "Run the LinkedIn Jobs Scraper for product manager roles in London and export the dataset URL."

Scheduling

Create an Apify schedule for recurring job monitoring.

For daily alerts, use datePosted: past24h and sortBy: recent.

For weekly market reports, use datePosted: pastWeek and a larger maxItems value.

Limits and caveats

Only public job data is collected.

LinkedIn can change page structure or rate-limit heavy traffic.

Some jobs do not show every detail field publicly.

Applicant counts are public text and may be approximate.

Descriptions can be long, so exports may contain large text fields.

FAQ

Can I scrape jobs without a LinkedIn account?

Yes. This Actor is designed for public job postings that are visible without logging in.

Can I run this every day?

Yes. Use Apify schedules with recent-date filters for daily monitoring.

Troubleshooting

Why did my run return fewer jobs than requested?

The search may have fewer public jobs than your maxItems setting, or LinkedIn may return repeated jobs that are deduplicated.

Try broader keywords, another location, or a longer date range.

Why are some detail fields empty?

Some LinkedIn postings do not publicly show seniority, employment type, industries, applicant text, or descriptions in the same way.

The Actor still saves the search-card fields and leaves unavailable fields empty.

Should I use a proxy?

The default input uses Apify Proxy with datacenter-style settings.

For small tests, direct requests may work.

For larger scheduled runs, a proxy is safer.

Legality

This Actor is designed for publicly available job posting data.

Do not scrape private data, account-only pages, or personal data you are not allowed to process.

Make sure your use complies with applicable laws, LinkedIn terms, and privacy rules.

If you process personal data, establish a lawful basis and retention policy.

Explore more Actors from fetch_cat:

Changelog

Initial version: scrape public LinkedIn job search results and optional public detail fields.

Support

If a run fails, share the run ID and input configuration.

Include whether the issue happens with keyword search, start URLs, detail fetching, or a specific filter.

Summary

LinkedIn Jobs Scraper turns public LinkedIn job postings into structured datasets.

It is useful for recruiting, lead generation, job aggregation, and labor-market research.

Start small, verify your query, then schedule recurring runs for ongoing monitoring.