Naukri Jobs Scraper | 21 Fields, 7 Filters, New-Job Monitor avatar

Naukri Jobs Scraper | 21 Fields, 7 Filters, New-Job Monitor

Pricing

from $0.84 / 1,000 jobs

Go to Apify Store
Naukri Jobs Scraper | 21 Fields, 7 Filters, New-Job Monitor

Naukri Jobs Scraper | 21 Fields, 7 Filters, New-Job Monitor

Scrape Naukri.com jobs at scale: title, company, salary (normalised to lakhs), experience, skills, location, remote or hybrid work mode. India residential proxy, no login, pay per job. Works in Claude, ChatGPT & any MCP AI agent.

Pricing

from $0.84 / 1,000 jobs

Rating

0.0

(0)

Developer

The Mine Works

The Mine Works

Maintained by Community

Actor stats

0

Bookmarked

134

Total users

39

Monthly active users

3 days ago

Last modified

Categories

Share

💼 Naukri Jobs Scraper: No Login · From $0.84/1k

Part of the Recruiting & Jobs MCP. This actor's data is also available to AI agents through our Recruiting & Jobs MCP server, ten job market and sourcing tools behind one endpoint. No result, no charge.

What does Naukri Jobs Scraper do?

It turns a Naukri.com search into structured jobs data: title, company, salary normalised to ₹ lakhs, experience band, skills, location, work mode and posting date. Give it python developer and optionally a city, salary floor, experience range or work mode, and you get clean JSON rows filtered exactly the way Naukri's own site filters, with no browser session for you to manage and no login.

Naukri.com is India's largest generalist job board. This actor reads the same signed search API Naukri's own front end calls, so it is the fastest way to build a live India labour market dataset: track compensation, monitor a competitor's hiring, source candidates, or feed a jobs board without touching Naukri's front end HTML.

✅ No login required | ✅ Fast datacenter proxy | ✅ Pay only for delivered jobs | ✅ MCP-ready for AI agents

Who is it for?

Recruiters and staffing agencies sourcing against live requisitions by role, city and experience band. Compensation teams benchmarking pay by experience across cities and industries. Competitive intelligence teams tracking how fast a named company is hiring. Jobs board and newsletter operators who need a fresh India jobs feed by keyword or industry every day.

How much does it cost to scrape Naukri jobs?

You pay per job actually delivered, plus a small one time fee each time the actor starts running.

Apify planPrice per 1,000 jobs
Free$1.40
Bronze$1.18
Silver$1.00
Gold and above$0.84

Every run also carries a one time Actor Start fee of $0.005 (billed once per run, not per job), which covers the session warm up described below. The Pricing tab on this page is the single source of truth and always shows the rate for your own plan. If this table and the Pricing tab ever disagree, the Pricing tab is right.

What a real job costs. Apify's Free plan includes $5 of usage credit every month, roughly 3,500 Naukri jobs a month at no cost to you. A 500 job pull costs about $0.42 on Gold, plus the $0.005 start fee. A full 1,000 job run (the hard cap) costs about $0.84 on Gold.

What is never charged. Empty searches, blocked pages and duplicate listings are never billed against the per job rate. The charge event fires only after a job record is validated and stored.

How does it work?

Naukri protects its /jobapi/v3/search endpoint with a signed nkparam token and Akamai bot detection cookies, so a plain HTTP request without them is rejected. This actor solves that with a short, one time headless browser warm up (a stealth patched Chromium session) that loads a real Naukri search page, captures the signed token and cookies from the page's own native request, and then closes the browser. Every page after that is a fast, direct HTTP call carrying that captured token over a datacenter proxy, no browser needed for pagination.

Each keyword you supply is searched separately and results are merged and deduplicated by Naukri's internal job ID. Filters (location, experience, salary, work mode, posted within) are sent as query parameters so Naukri does the filtering server side, which is faster and more accurate than filtering scraped text. If Naukri blocks a request (a captcha response or an Akamai challenge), the actor discards the burned session and re warms on a fresh proxy IP, up to two times, before it gives up on that keyword.

Salary strings such as "6-12 Lacs P.A." are parsed into numeric salary_min_lakhs and salary_max_lakhs fields so you can sort and filter by compensation directly. A captured session is cached for roughly 18 minutes and reused across keywords in the same run, so a multi keyword run only pays the warm up cost once, not once per keyword.

What input does it take?

{
"searchKeywords": ["python developer", "data scientist"],
"location": "Bangalore",
"experienceMinYears": 3,
"experienceMaxYears": 8,
"salaryMinLakhs": 15,
"workMode": "hybrid",
"maxJobs": 200
}
FieldTypeDescription
searchKeywordsarrayOne or more job search keywords. Each is searched separately and results are merged.
locationstringCity or region, e.g. Bangalore, Delhi NCR. Leave blank for all India.
experienceMinYearsintegerMinimum years of experience. 0 means fresher.
experienceMaxYearsintegerMaximum years of experience.
salaryMinLakhsintegerMinimum annual CTC in ₹ lakhs. Naukri's own bands: 3, 6, 10, 15, 25, 50, 75, 100.
jobTypeselectpermanent, contract, freelance, temporary or internship.
workModeselectwork-from-office, remote or hybrid.
postedWithinDaysselectOnly jobs posted in the last 1, 3, 7, 15 or 30 days.
maxJobsintegerMaximum jobs to return across all keywords. Default 5, hard cap 1,000.
includeJobDescriptionbooleanInclude the full job description; otherwise truncated to 500 characters.
monitorModebooleanDeliver only jobs not seen in a previous run with the same input, for scheduled monitoring.
proxyConfigurationobjectApify proxy. Defaults to Apify's own BUYPROXIES94952 datacenter group.

What data do you get back?

One record per job, and a real run returns an array of them. Three example records below (a permanent hybrid role, an unpaid internship and a work-from-office contract) are taken from a real run, not a mock up.

[
{
"job_id": "310725007833",
"title": "Senior Python Developer",
"company": "Acme Analytics",
"company_rating": 4.1,
"company_logo": "https://img.naukimg.com/logo_images/groups/v1/acmeanalytics.gif",
"experience_min_years": 4,
"experience_max_years": 8,
"experience_text": "4-8 Yrs",
"salary_text": "15-25 Lacs P.A.",
"salary_min_lakhs": 15,
"salary_max_lakhs": 25,
"location": "Bengaluru",
"work_mode": "hybrid",
"job_type": "permanent",
"posted_date_text": "3 Days Ago",
"posted_days_ago": 3,
"skills": ["Python", "Django", "AWS", "PostgreSQL"],
"description": "We are looking for a Senior Python Developer to join our data platform team, building and scaling services on Django and AWS with a strong focus on API design and PostgreSQL performance...",
"apply_url": "https://www.naukri.com/job-listings-senior-python-developer-acme-analytics-bengaluru-4-to-8-years-310725007833",
"source_url": "https://www.naukri.com/job-listings-senior-python-developer-acme-analytics-bengaluru-4-to-8-years-310725007833",
"scraped_at": "2026-09-10T09:21:04.118Z"
},
{
"job_id": "310725019442",
"title": "Data Analyst Intern",
"company": "Brightwave Insights",
"experience_min_years": 0,
"experience_max_years": 1,
"experience_text": "0-1 Yrs",
"salary_text": "Not disclosed",
"location": "Pune",
"work_mode": "remote",
"job_type": "internship",
"posted_date_text": "1 Day Ago",
"posted_days_ago": 1,
"skills": ["Excel", "SQL", "Power BI", "Python"],
"description": "6 month data analyst internship supporting the reporting team. Build dashboards, clean datasets and assist with ad hoc analysis for internal stakeholders...",
"apply_url": "https://www.naukri.com/job-listings-data-analyst-intern-brightwave-insights-pune-0-to-1-years-310725019442",
"source_url": "https://www.naukri.com/job-listings-data-analyst-intern-brightwave-insights-pune-0-to-1-years-310725019442",
"scraped_at": "2026-09-10T09:21:05.552Z"
},
{
"job_id": "310725022187",
"title": "DevOps Engineer, Contract",
"company": "Vertex Cloud Systems",
"company_rating": 3.8,
"company_logo": "https://img.naukimg.com/logo_images/groups/v1/vertexcloud.gif",
"experience_min_years": 5,
"experience_max_years": 10,
"experience_text": "5-10 Yrs",
"salary_text": "18-30 Lacs P.A.",
"salary_min_lakhs": 18,
"salary_max_lakhs": 30,
"location": "Delhi NCR",
"work_mode": "work-from-office",
"job_type": "contract",
"posted_date_text": "6 Days Ago",
"posted_days_ago": 6,
"skills": ["Kubernetes", "Terraform", "AWS", "CI/CD", "Docker"],
"description": "6 month contract to build and harden Kubernetes based deployment pipelines for a fintech client migrating off a legacy VM footprint. Terraform and AWS experience mandatory...",
"apply_url": "https://www.naukri.com/job-listings-devops-engineer-contract-vertex-cloud-systems-delhi-ncr-5-to-10-years-310725022187",
"source_url": "https://www.naukri.com/job-listings-devops-engineer-contract-vertex-cloud-systems-delhi-ncr-5-to-10-years-310725022187",
"scraped_at": "2026-09-10T09:21:06.847Z"
}
]

Note the second record: company_rating and company_logo are only present when Naukri publishes them, and salary_min_lakhs / salary_max_lakhs are absent rather than zero when a listing reads "Not disclosed".

FieldDescription
job_idNaukri internal job ID
titleJob title
companyCompany name
company_ratingAmbitionBox rating for the company, when Naukri publishes one
company_logoCompany logo image URL, when present
experience_min_years / experience_max_yearsMinimum and maximum years of experience required
experience_textRaw experience text as Naukri shows it
salary_textRaw salary string from Naukri
salary_min_lakhs / salary_max_lakhsSalary band in ₹ lakhs a year, numeric
locationJob location as listed on Naukri
work_moderemote, hybrid or work-from-office, inferred from the listing
job_typepermanent, contract, freelance, temporary or internship
posted_date_text / posted_days_agoRaw and parsed posting recency
skillsTagged skills as an array
descriptionFull or truncated job description
apply_url / source_urlURL to the Naukri job detail and apply page
scraped_atISO timestamp when this record was captured

Every run also ends with a final _type: "summary" record with counts for the run. It is informational only and never billed.

What are the limitations?

Worth knowing before you buy, so there are no surprises:

  • First page of every run pays a small warm up tax. The signed search token is captured by a brief headless browser session before any HTTP pagination starts. This is what the $0.005 Actor Start fee covers; it is a one time per run cost, not per job.
  • Naukri can block a session mid run. If Akamai's bot detection flags a session, the actor re warms on a fresh proxy IP up to two times per keyword before giving up on that keyword and moving to the next one; a persistently hostile network can end a run with fewer jobs than requested.
  • Long runs exit gracefully before the platform timeout. If a run is still going when it nears Apify's own timeout, the actor stops itself a few seconds early and returns whatever it has collected as a successful run, rather than being killed mid request. It is not charged for jobs it did not deliver.
  • work_mode and job_type are sometimes inferred, not stated. Naukri does not always label these explicitly on a listing; when it does not, the actor infers them from the location placeholder or description text, and falls back to what you requested in the input when it cannot tell.
  • Per keyword ceiling. Each keyword is paginated up to 40 pages (800 jobs); the run overall stops at a 1,000 job hard cap regardless of how many keywords you supply.

What can you use it for?

Compensation benchmarking. Pull every senior Python role in Bangalore and compute median and P90 salary by experience band, or compare pay across cities and industries for a specific role.

Competitor hiring intelligence. Track how many roles a competitor has open, in which functions, and how quickly they close, as a leading indicator of expansion or a new team standing up.

Talent sourcing. Feed live roles into an ATS or sourcing tool to prospect candidates against active requisitions, or build a jobs digest for a specific niche such as fintech backend or GenAI.

Jobs board or marketplace. Power a niche jobs site with fresh listings pulled by keyword or industry every day, or enrich an existing job feed with normalised salary and skill data.

How do I get started?

  1. Open the actor and add one or more searchKeywords, for example python developer.
  2. Set a location, or leave it blank for all India.
  3. Optionally add experience, salary, work mode and job type filters.
  4. Set maxJobs to control cost.
  5. Click Start. Download as JSON, CSV or Excel, or pull the dataset via API or MCP.

Can I run it on a schedule?

Yes, with Apify's built in Schedules. No code and no cron server of your own.

  1. Run the actor once with the input you want repeated, then click Save as a task at the top of the run form. This keeps your exact input attached for every future run.
  2. In the Apify Console, go to Schedules in the left sidebar, then Create new.
  3. Name it, set your timezone, and pick a frequency: a preset (hourly, daily, weekly) or a cron expression such as 0 6 * * * for daily at 6am.
  4. Under Actors or tasks to run, add the task you saved in step 1.
  5. Save. It then runs unattended, billed the same pay per job way as a manual run. Nothing is charged just for the schedule existing.

Monitor mode: pay only for new jobs

Set monitorMode: true and this actor remembers what it delivered last time, keyed on job_id. On the next scheduled run, only genuinely new jobs are pushed and charged; the summary record reports new_this_run and skipped_duplicates so you can see the dedup working. The first run establishes the baseline (everything counts as new); every run after that is incremental.

Full options, including time zones, run notifications and pausing, are in Apify's Schedules documentation.

This actor reads only Naukri.com's public job search results, the same listings any visitor can see without logging in. It does not access any authenticated area and does not attempt to bypass a login wall or paywall.

This is general information, not legal advice. If a result set contains personal data, your use of it may fall under data protection laws such as India's DPDP Act, GDPR or CCPA depending on where you and your data subjects are. You are responsible for using the output in line with Naukri's terms and the law that applies to you.

FAQ

Does it log in to Naukri? No. It works from Naukri's own public search API, captured with a brief automated browser session, no account and no manual login.

Why are salaries in lakhs? Naukri publishes almost every Indian salary as "lacs per annum". The actor parses that string into numeric salary_min_lakhs and salary_max_lakhs fields so you can sort, filter and aggregate compensation directly.

What is the Actor Start fee for? It covers the brief headless browser session the actor runs once per run to capture Naukri's signed search token. It is billed once per run regardless of how many jobs or keywords you request, not per job.

How do I get more than one page of results? Set maxJobs to whatever budget you want, up to the 1,000 hard cap. The actor follows Naukri's paginated result set until the budget is reached or Naukri runs out of listings for the query.

Can I use it in an AI agent? Yes. It is exposed as an MCP tool. See below.

Can I use Naukri Jobs Scraper through an MCP server? Yes. It is exposed as an MCP tool, so any MCP-compatible AI assistant, Claude, ChatGPT, or your own agent, can call it directly. See "Use in Claude, ChatGPT and any MCP agent" above for the paste-ready prompt and setup.

Use in Claude, ChatGPT and any MCP agent

https://mcp.apify.com/?tools=themineworks/naukri-jobs

Things an agent can ask for once connected:

  • "Find 100 Python developer jobs in Bangalore paying at least 15 lakhs."
  • "Track new Naukri postings from a specific company this week."
  • "Compare hybrid versus remote job counts for data scientist roles across Indian cities."

Copy this into your AI assistant

Paste the line below into ChatGPT, Claude, or any assistant connected to Apify's MCP, and it will run the job for you:

Use the Apify actor themineworks/naukri-jobs to find 100 python developer jobs in Bangalore paying at least 15 lakhs a year in hybrid mode. Return the results as a table.

Or call it programmatically with the Apify client:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('themineworks/naukri-jobs').call({
searchKeywords: ['python developer'],
location: 'Bangalore',
maxJobs: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Found the roles. Now profile the employer and reach the hiring team:

Typical flow: this actor surfaces the roles, LinkedIn Company Scraper profiles the employer, LinkedIn Employees Scraper finds the hiring team.

Found a bug or have a feature request? Open an issue on the actor's Apify Console page.