CutShort Jobs Scraper
Pricing
$3.00 / 1,000 job listing results
CutShort Jobs Scraper
Scrape CutShort.io India tech and startup jobs with salary bands, skills, experience, full description, recruiter and funding stage.
Pricing
$3.00 / 1,000 job listing results
Rating
0.0
(0)
Developer
Andrew
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Extract India tech and startup job listings from CutShort.io — title, both salary bands (the displayed range and the hidden internal floor), skills, experience range, full description, recruiter name, remote type and company funding stage. Paste listing or job URLs, or search by skill + city. No login required.
What you get
Every job comes out as one dataset row with:
- Job:
jobId,title,url,postedAt,roleTypes(full time / internship),remoteType(remote_only,remote_okay,remote_not_okay) - Salary:
salaryTextas shown on the site, plus numericsalaryMin/salaryMax(displayed band),salaryFloorInternal(hidden internal floor — see below),salaryHidden(true when the site shows "Best in industry" but a numeric band still exists),currency - Requirements:
experienceMin/experienceMaxin years,skills[] - Description:
descriptionas clean plain text anddescriptionHtmlas the original markup - Company:
company,companyUrl,companyType(Product / Services),companySize,fundingStage(Bootstrapped / Raised funding / Profitable),companyFounded,companyWebsite,companyLinkedin,companyLogo - Recruiter:
recruiterName(the person who posted the job),postedByCompanyandhiringForClient(true when an agency posts on behalf of thecompany) - Location:
locations[]andlocationsText - Extras with "Fetch job pages" on:
lastActiveAt(when the recruiter last confirmed the role is open) andvalidThrough
Export the dataset to JSON, CSV, Excel or Google Sheets straight from the Apify console.
What "hidden salary floor" means
CutShort stores two lower bounds for every salary band. The one shown on the page (salaryMin) is the "vanity" figure; the one actually used for matching candidates (salaryFloorInternal) is often lower — frequently ₹0, meaning the company will consider candidates below the advertised minimum. Roughly 1 in 10 listings also hides the band entirely ("Best in industry"); those rows come out with salaryHidden: true and the numeric band still filled in.
Use cases
- Salary benchmarking — compare advertised vs. internal salary floors by skill, city and funding stage
- Recruiter and agency lead generation —
recruiterName,postedByCompanyandcompanyLinkedinfor every posting - Startup market research — track which funded, bootstrapped or profitable companies are hiring for which stacks
- Job-alert automation — run on a schedule and diff
jobIdagainst your previous dataset - Competitive hiring intelligence — monitor a competitor's listing page or the remote page for your stack
How to use
You can drive the scraper with URLs, with keywords, or both.
Option A — Start URLs
- Paste one or more CutShort URLs into Start URLs:
- a listing page such as
https://cutshort.io/jobs/reactjs-jobs-in-bangalore-bengaluruorhttps://cutshort.io/jobs/remote-python-jobs— the scraper walks every page of it (50 jobs per page) - an individual job page such as
https://cutshort.io/job/FullStack-Tech-Lead-Bengaluru-Bangalore-...
- a listing page such as
- Set Max items (default 200; 0 = unlimited) and run.
Option B — Skills / roles + City
- Enter keywords in Skills / roles, e.g.
react,python,data science,devops,product manager,ui ux - Optionally enter a City — Bangalore, Mumbai, Delhi NCR / Gurgaon / Noida, Hyderabad, Pune, Chennai, Kolkata, Ahmedabad, Jaipur, Kochi, Coimbatore, Indore, Chandigarh or Bhubaneswar have dedicated pages
- Optionally tick Remote-friendly only or set a Minimum salary in INR lakhs per year
- Run — results appear in the Dataset tab
Pasted job URLs are always scraped first, so they are never squeezed out by Max items.
The fixed-page limitation (please read)
CutShort does not offer public free-text search. What it publishes is a fixed catalogue of about 3,700 role / skill pages, each optionally combined with one of 14 cities or a "remote" prefix. This scraper downloads that catalogue at the start of every run and maps each keyword to the closest page — react → reactjs-jobs, data scientist → datascience-jobs, qa → qa-software-testing-jobs, and so on. The run log shows exactly which page each keyword resolved to.
Consequences:
- A very specific phrase ("senior staff platform engineer fintech") will be matched to the nearest generic page, not searched literally.
- Cities outside the 14 above fall back to the all-India page for that skill, filtered by location text (fully remote jobs are kept, since they are open to that city too).
- Filters (Remote-friendly only, Minimum salary) are applied to the jobs on those pages, so a strict filter can return fewer rows than Max items.
If a keyword resolves to the wrong page, paste the listing URL you want directly into Start URLs instead.
Output format
Each dataset record:
{"jobId": "6a96814a4d5d592b26935e3d","title": "FullStack Tech Lead","url": "https://cutshort.io/job/FullStack-Tech-Lead-Bengaluru-Bangalore-GOSUPER-EDTECH-enMigpyj","company": "GOSUPER EDTECH","companyUrl": "https://cutshort.io/company/jobs-at-gosuper-edtech-45-TBZSiFNp","companyType": "Product","companySize": "0-20","fundingStage": "Bootstrapped","companyFounded": 2023,"companyWebsite": "https://gosuperedtech.com","companyLinkedin": "https://linkedin.com/company/gosuperedtech","companyLogo": "https://cdnv2.cutshort.io/company-static/.../company_logo.png","hiringForClient": false,"postedByCompany": "GOSUPER EDTECH","locations": ["Bengaluru (Bangalore)"],"locationsText": "Bengaluru (Bangalore)","remoteType": "remote_not_okay","roleTypes": ["full_time"],"salaryText": "₹8L - ₹12L / yr","currency": "INR","salaryMin": 800000,"salaryMax": 1200000,"salaryFloorInternal": 0,"salaryMaxInternal": 1200000,"salaryHidden": false,"experienceMin": 3,"experienceMax": 5,"skills": ["React.js", "Generative AI", "Agile/Scrum", "Google Cloud Platform (GCP)", "NodeJS (Node.js)", "SQL"],"description": "Role Overview\nAs a Senior Fullstack Developer at GoSuper, you'll help build and ship features across both web and mobile platforms. …","descriptionHtml": "<p><strong>Role Overview</strong></p><p>As a Senior Fullstack Developer …</p>","recruiterName": "Vanitha F","postedAt": "2026-09-01T07:39:54.000Z","lastActiveAt": "2026-09-04T06:17:39.878Z","validThrough": "2026-12-03T06:21:49.423Z","sourceSlug": "reactjs-jobs-in-bangalore-bengaluru","scrapedAt": "2026-09-06T03:25:17.769Z"}
Salary figures are absolute annual amounts in currency (₹800000 = ₹8 LPA). sourceSlug tells you which listing page a job came from; it is null for jobs scraped from a pasted job URL. Jobs scraped from a pasted job URL carry the displayed salary band only — salaryFloorInternal is exposed exclusively on listing pages.
Pricing
Pay per result — you are charged once for every job row written to the dataset. Rows dropped by your filters cost nothing.