Naukri Jobs Scraper — India IT & Tech Jobs ✅ No Login
Pricing
$1.50 / 1,000 jobs
Naukri Jobs Scraper — India IT & Tech Jobs ✅ No Login
Scrape Naukri.com jobs: title, company, salary (normalised to lakhs), experience, skills, location and work mode. Pay only per job returned. Works in Claude, ChatGPT & any MCP-compatible AI agent. MCP server: the-mine-works-mcp.hatchable.site
Pricing
$1.50 / 1,000 jobs
Rating
0.0
(0)
Developer
The Mine Works
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
Naukri Job Scraper — India's #1 Job Board, Structured & Pay-Per-Job
The most complete, reliable Naukri.com scraper on Apify. Pull every Naukri job that matches your filters into a clean, normalised schema — salary in lakhs, experience as integers, skills as arrays, posted-date as days-ago. Pay only for jobs returned. Zero results = zero charge.
If you build recruitment software, do salary benchmarking, run a job board, or need labour-market data for India, this is the actor you wire into your pipeline and forget about.
What it does
naukri-jobs queries the public Naukri.com job-search endpoint, paginates through results, and emits one structured record per job to your Apify dataset. Every field that Naukri exposes — title, company, salary, experience band, location, work mode, skills, full job description, posted date, AmbitionBox company rating, application URL — is parsed, cleaned, and normalised.
Unlike the existing Naukri scrapers on the store, this actor:
- Normalises salary to ₹ Lakhs per annum (both raw text and parsed
salary_min_lakhs/salary_max_lakhs). - Splits experience into integer
experience_min_yearsandexperience_max_yearsso you can filter and aggregate. - Converts
"3 weeks ago"and"Today"into a numericposted_days_ago. - Exposes
skillsas a deduped array, not a comma-soup string. - Supports work mode (remote / hybrid / WFO) — most existing actors don't.
- Charges only after the job is successfully pushed to your dataset. No phantom invoices on failed runs.
Why this beats the alternatives
Three Naukri scrapers exist today on Apify Store. Combined MAU is decent (~1,700) but the ratings tell the real story: 0★, 3.96★ over 9 reviews, 4.22★ over 9 reviews. The common complaints:
- Incomplete fields. Salary is left as raw text, skills aren't parsed, posted-date is unusable for filtering.
- No work-mode filter. You can't get only remote, or only hybrid, or only WFO jobs.
- Opaque billing. You get charged even when the run returns zero rows or fails halfway.
- Brittle pagination. Runs stop early or duplicate rows across pages.
naukri-jobs fixes all four. Salary is parsed into lakhs. Skills are an array. Posted-date becomes an integer. Work mode is a first-class filter. Billing is strict pay-per-job (PPE) — if we push zero jobs, you pay zero. Pagination deduplicates by Naukri's internal jobId, so even overlapping keywords don't double-charge you.
Features
- All Naukri filters supported: keyword, location, experience range, minimum salary, job type, work mode, posted-within-days.
- Salary normalised to ₹ Lakhs (handles
"5,00,000 - 8,00,000 PA","3-5 Lacs PA","₹ 3.5 - 5.5 Lakhs", "Not Disclosed"). - Skills extracted as a deduped array.
- Work-mode and remote-job filter (work-from-office / remote / hybrid).
- Posted-date normalised — both raw text and integer
posted_days_ago. - Full job description included by default; can be truncated to 500 chars for cheaper storage.
- Multiple search keywords in one run — results merged and deduped.
- AmbitionBox company rating + logo included where available.
- Zero charge on empty results — the actor calls
Actor.fail()with a clear reason instead of silently billing you. - Hard cap of 1,000 jobs per run, configurable via
maxJobs.
Output schema
Each job is emitted as one dataset record:
{"job_id": "230625006723","title": "Senior Python Developer","company": "Acme Tech Pvt Ltd","company_rating": 4.1,"company_logo": "https://img.naukri.com/logo_images/v3/231201.gif","experience_min_years": 4,"experience_max_years": 7,"salary_text": "12,00,000 - 18,00,000 PA","salary_min_lakhs": 12,"salary_max_lakhs": 18,"location": "Bangalore/Bengaluru, Hyderabad","work_mode": "hybrid","job_type": "permanent","posted_date_text": "3 Days Ago","posted_days_ago": 3,"skills": ["Python", "Django", "FastAPI", "AWS", "PostgreSQL"],"description": "We are hiring an experienced Python developer …","apply_url": "https://www.naukri.com/job-listings-senior-python-developer-acme-…","source_url": "https://www.naukri.com/job-listings-senior-python-developer-acme-…","scraped_at": "2026-06-06T11:42:18.213Z"}
A final summary row is always pushed:
{"_type": "summary","keywords_searched": ["python developer"],"location": "Bangalore","jobs_requested": 50,"jobs_scraped": 50,"jobs_failed": 0,"charged_for": 50,"scraped_at": "2026-06-06T11:42:19.001Z"}
Pricing
Your first 25 jobs are free — every Apify account, no card, no trial clock. After that it is $2 per 1,000 jobs scraped ($0.002/job), with a zero charge on zero results guarantee.
- First 25 jobs free per account (lifetime), then $0.002/job
- You are charged only after a job record is successfully pushed to your dataset.
- Runs that fail to find any jobs end with
Actor.fail()— no rows, no bill. - Apify platform compute time is on the Apify standard rate; the actor is cheap to run (one API call per 20 jobs, ~1.5s page delay).
Use cases
- Recruiters and staffing firms — pull fresh listings into your ATS for sourcing and competitive intel.
- Market intelligence — track who's hiring for which skills in which cities, week over week.
- Salary research — build benchmarks by role, location, experience band, using normalised lakhs fields.
- Candidate analytics — show your candidates the live demand for their skill stack.
- HRTech builders — power job boards, alerts apps, and Telegram/WhatsApp job bots with structured Naukri data.
- Investors and analysts — track headcount and hiring signals across Indian listed companies and unicorns.
- Job-seeker tools — feed AI assistants and resume tailoring tools with the live Indian job market.
Filter reference
| Filter | Type | Values | Example |
|---|---|---|---|
searchKeywords | array | one or more strings | ["python developer", "data scientist"] |
location | string | any Indian city or region | "Bangalore", "Delhi NCR", "Mumbai" |
experienceMinYears | integer | 0–30 | 2 |
experienceMaxYears | integer | 0–30 | 7 |
salaryMinLakhs | integer | annual CTC in INR Lakhs | 10 |
jobType | enum | permanent, contract, freelance, temporary, internship | permanent |
workMode | enum | work-from-office, remote, hybrid | remote |
postedWithinDays | enum | 1, 3, 7, 15, 30 | 7 |
maxJobs | integer | 1–1000 (default 50) | 200 |
includeJobDescription | boolean | default true | false for cheaper storage |
How it works
Naukri's /jobapi/v3/search endpoint is gated by a signed nkparam request header generated by their obfuscated front-end JavaScript, plus Akamai bot-management cookies. You cannot forge either — they have to come from a real browser session.
This actor uses a hybrid Playwright-warmup + HTTP-pagination technique:
- Warm-up (once per keyword, ~8–12s). A headless Chromium session loads the Naukri search page, intercepts the outgoing XHR to
/jobapi/v3/search, and harvests thenkparamheader plus all session cookies. - Fast pagination (HTTP). Subsequent pages are fetched via
gotagainst the same sticky proxy IP, reusing the captured token and cookies. ~1s per page. - Auto re-warm. If the API returns
406orrecaptcha required(token expired or session burned), the actor re-warms transparently and retries. Sessions are also refreshed every 18 minutes proactively.
This matches the approach with the highest verified success rate against Naukri's anti-bot stack (>90%).
Proxy requirements
Indian residential proxy is REQUIRED. Naukri's Akamai layer aggressively blocks non-Indian and datacenter traffic. The actor defaults to RESIDENTIAL with apifyProxyCountry: "IN" — do not change this unless you know what you're doing. Without IN residential, success rate drops below 30% and most requests will return 403 or the recaptcha challenge.
Reliability and ethics
The actor uses Naukri's own public job-search JSON endpoint — the same one that powers naukri.com's search UI — so the data is exactly what end users see. It respects rate limits with a 1.5-second page delay and exponential backoff on HTTP 429. It only touches publicly listed jobs; no logged-in pages, no candidate data, no resumes.
The browser warm-up adds ~8–12 seconds of wall-clock time per keyword at the start of each session. After warm-up, pagination is fast (~1s per page of 20 jobs). For a typical 200-job run on one keyword, expect ~20–25s total.
Keywords
naukri scraper, naukri api, india jobs scraper, indian job board, naukri.com data, salary data india, tech jobs india, indian recruitment data, naukri jobs scraper, naukri job listings, indian labour market data, hiring data india, jobs api india, india job feed, recruitment automation india
Related Actors
| Actor | Use case |
|---|---|
| AmbitionBox Scraper | Company ratings, culture scores, and salaries for hiring firms |
| LinkedIn Employees Scraper | Company headcount and seniority breakdown |
| ATS Jobs Scraper | Global job boards (Greenhouse, Lever, Workday) for comparison |