LinkedIn Company Jobs Scraper: Hiring & New Openings
Pricing
from $1.59 / 1,000 jobs
LinkedIn Company Jobs Scraper: Hiring & New Openings
LinkedIn company jobs scraper: every open job of the companies you name (page URL, ID or name), worldwide, with its full job page and the company's LinkedIn profile at one price. Only-new-jobs monitor for hiring signals; similar jobs, applicants and pay when shown. No login.
Pricing
from $1.59 / 1,000 jobs
Rating
0.0
(0)
Developer
DeepMine
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
This LinkedIn company jobs scraper gets the open jobs of the companies you name (a LinkedIn company page URL, the company's LinkedIn ID or just its name), worldwide by default, and puts the job details (full description, seniority, job type, applicants line, apply type, similar jobs, and the pay range when LinkedIn shows it) and the company's LinkedIn profile (website, domain, industry, size, headcount, followers, headquarters and address) on every row, at one price. Give the run a monitor name and each scheduled run returns only the new openings.
| ๐ผ Title | ๐ข Company | ๐ Location | ๐ฐ Pay | ๐ฅ Applicants | ๐ญ Company size | ๐ Posted |
|---|---|---|---|---|---|---|
| Principal Software Engineer, Infrastructure Security | OpenAI | New York, NY | $401,000 - $510,000 per year | 155 applicants | 1,001-5,000 employees | 2026-10-18T14:35:00Z |
| Manager I, Engineering - Coordination Systems Storage | Datadog | New York, NY | $192,000 - $240,000 per year | Be among the first 25 applicants | 1,001-5,000 employees | 2026-10-18T11:35:00Z |
| Applied Scientist - CoreAI Voice Agent | Microsoft | Vancouver, British Columbia, Canada | $85,800 - $169,300 per year | 136 applicants | 10,001+ employees | 2026-10-18T17:02:00Z |
$1.99 per 1,000 jobs on the Starter plan ($2.29 Free, $1.79 Scale, $1.59 Business), job details and company data included, no start fee. The prefilled run (102 jobs) costs about $0.20.
No LinkedIn account, login or cookies.
What it's for
- Hiring signals for sales. What your target accounts hire for tells you what they're building and buying: a new data team, a first security hire, an office in a new country. Each row carries the company's website and domain, ready for your CRM.
- Competitor tracking. Every role a competitor opens, where, at what level and at what pay (LinkedIn's pay box, or the range written in the description, in the currency the posting states). When the description says its range is for another country,
salaryAppliesTosays which: Stripe's Toronto jobs quote "the annual US base salary range", so they come out in USD for the United States. - Recruiting and job hunting. Follow the employers you care about and get each new opening the day it's listed, with its applicant count.
- Job boards and feeds. An employer's whole job list with full descriptions, refreshed on a schedule.
Only new jobs: monitors
Type a monitor name (for example weekly-fintech) and schedule the run. The first run delivers the jobs it finds and remembers them; every later run with the same name returns only jobs no earlier run delivered. Jobs it already knows are skipped before their pages are read, so they're never charged twice.
- A monitor's first run =
deliver(default: you get today's jobs) orbaseline(it only remembers the jobs listed now, up to 5,000 per search, with no rows and no charge, so the next run brings only jobs posted after it). - The monitor lives in your own Apify account as a named key-value store,
linkedin-company-jobs-<monitor name>. Start the monitor over forgets it. - A job that drops out of LinkedIn's list and comes back isn't delivered again. A run that the platform restarts keeps its first-run choice and doesn't repeat or recharge rows.
On 2026-10-18 a monitor's first run delivered 46 jobs and the same monitor 14 seconds later delivered 0 (46 skipped, run succeeded); a baseline on Datadog remembered 615 jobs at no charge, and the run after it delivered 0.
How to set it up
- Companies: one per line. A page URL (
https://www.linkedin.com/company/stripe), the company's LinkedIn ID (1035is Microsoft; it's thef_Cnumber in a LinkedIn jobs URL), or a name (looked up on LinkedIn:OUTPUT.companiessays which company each name matched). The same company given twice (an ID and a name) is searched once (OUTPUT.companyAliases). A name LinkedIn doesn't know is listed in the status message and costs nothing. Up to 50 companies per run. - Job titles or keywords and Locations: optional. Each company is searched for each keyword in each location; empty means all its jobs, worldwide. A job found by several companies or searches is delivered and charged once, and every search that found it is in the run's
PROVENANCErecord. - Posted within: any time by default. LinkedIn serves at most 1,000 jobs per search, so for a bigger employer the run goes on by posting date over the last year: on 2026-10-18 Microsoft (LinkedIn showed 2,000+) gave 1,628 jobs in 162 seconds, every job of the newest 5.7 days included.
- Max jobs per company (100 when the input doesn't say; the prefill uses 34) and, in Advanced, Max jobs in total for the whole run. You pay only for the jobs you get.
- Monitor name and an Apify Schedule (daily or weekly) for only new jobs.
{"companies": ["https://www.linkedin.com/company/stripe", "HubSpot", "1035"],"keywords": ["engineer"],"locations": ["United States"],"maxResults": 200,"monitorName": "weekly-check"}
Filters (optional): remote / hybrid / on-site, job type, experience level, title must / must not include, industry, Easy Apply only, fewer than 10 applicants, only jobs that show pay, distance from a location, and job ids to skip. Jobs a filter leaves out aren't charged. Inputs written for other company-jobs scrapers (companyUrls, startUrls, keyword, location, maxItems, datePosted, ...) work as they are.
Output
One row per job, the company first. Fields, in row order: companyLogo, title, company, location, salary, salaryMin, salaryMax, salaryPeriod, salaryCurrency, salarySource, salaryAppliesTo, employmentType, seniority, workplaceType, applicants, applicantsText, isEasyApply, applyType, applyUrl, postedAt, postedTimeAgo, isReposted, jobState, detailsStatus, jobUrl, companyUrl, companySlug, companyInput, companyWebsite, companyDomain, companyIndustry, companySize, companySizeMin, companySizeMax, companyEmployeesOnLinkedIn, companyFollowers, companyHeadquarters, companyType, companyFounded, companySlogan, companySpecialties, companyDescription, companyStreetAddress, companyCity, companyRegion, companyPostalCode, companyCountry, companyOfficeLocations, companyAffiliatedPages, companyRecentPosts, jobPosterName, jobPosterTitle, jobPosterUrl, jobPosterPhoto, industries, benefits, jobInsights, yearsOfExperience, contactEmail, emails, phones, descriptionSnippet, description, descriptionHtml, similarJobs, peopleAlsoViewed, locationCity, locationState, locationCountry, jobId, companyId, searchKeywords, searchLocation, searchUrl, scrapedAt.
How full they were on 2026-10-18 (the prefilled run's 102 jobs, and 1,628 Microsoft jobs):
| Field | Prefill (OpenAI, Datadog, Microsoft) | Microsoft, any time |
|---|---|---|
| Title, company, location, posting time, job link, description, job type, seniority, industry, applicants line, apply type | 100% | 100% |
| Company website, domain, industry, size, headcount, followers, headquarters, city, country | 100% | 100% |
| Similar jobs and "people also viewed" (up to 10 each) | 100% | 100% |
Pay range (salary, with numbers and currency) | 76% | 65% |
| Applicant count as a number | 84% | 76% |
| Workplace (remote / hybrid / on-site) | 80% | 48% |
| Company founded, slogan | 33% (Datadog) | 0% (Microsoft's page has none) |
| Emails in the description | 0% | 0.5% |
| Job poster | 0% | 0% |
companyInputis the company as you typed it, so you can join rows back to your list;searchUrlis the LinkedIn search the job came from.applyTypeiseasyApplyorexternal.applyUrlis the LinkedIn page of an Easy Apply job; LinkedIn doesn't show an employer's own application link to logged-out visitors, so it's empty for external ones (no link is made up).detailsStatussays whether the job page was read (ok); a job whose page didn't load still comes with its search card.- Big employers' jobs rarely name a job poster; LinkedIn shows one only when the poster chose to.
emailsandphonesare the ones written in the description. descriptionHtmlcomes only with Description as HTML too, andmatchedKeywords,unmatchedKeywordsandkeywordMatchScore(which of your skills each description names) only with Skills to look for. Empty values arenull.
The run summary (OUTPUT) has each company's result (companies: matched ID, jobs, LinkedIn's count, why it stopped), the aliases, the monitor's counts and the run's stop reason. A run that gets no jobs because LinkedIn refused it fails with a clear message instead of passing as a success.
Pricing
Pay per job, no start fee and no minimum: the prefilled run (102 jobs) costs about $0.20 on Starter.
| Your Apify plan | Per 1,000 jobs, details and company data included |
|---|---|
| Free | $2.29 |
| Starter | $1.99 |
| Scale | $1.79 |
| Business | $1.59 |
Platinum and Diamond plans pay the Business price. You're billed only for rows in your dataset: jobs a filter leaves out, jobs a monitor delivered before and a monitor's baseline are free, and the run stops at your spending limit.
FAQ
How is this different from LinkedIn Jobs Search? Same engine. LinkedIn Jobs Search starts from keywords and places; this one starts from employers, remembers what it sent you, and includes job and company details in one price.
A name matched the wrong company. Use the company's page URL or ID instead; OUTPUT.companies shows the ID each name matched.
Do I need a LinkedIn account? No. It reads only what LinkedIn shows logged-out visitors.
Feedback
Missing a field, or a company that doesn't come back the way you expect? Open an issue on the Issues tab and we'll look into it. If the data helps you, a short review on this page helps other people find it.