Naukri Job Scraper - India Jobs, INR Salaries, Skills & Ratings
Pricing
from $0.50 / 1,000 job listing returneds
Naukri Job Scraper - India Jobs, INR Salaries, Skills & Ratings
Search Naukri.com, India's largest job board, by keyword, city or search URL. Get one row per job with company IDs, annual INR salary ranges, experience in years, skills, posting time and the company rating and review count. Built for recruiters, HR tech and labour-market research.
Naukri Job Scraper
Naukri Job Scraper turns Naukri.com job search results into clean, structured rows for recruiters, HR software and India labour-market research. Search by job title, skill, company or city, or paste a Naukri search URL with your own filters, and get one row per unique job listing with annual INR salary ranges, skills, experience in years and the company rating and review count that Naukri shows.
Naukri is India's largest job board, so it is the natural source for hiring demand in Bengaluru, Hyderabad, Pune, Chennai, Mumbai, Delhi NCR and beyond. Use the output to compare hiring demand across cities, monitor employers, group vacancies by skill, benchmark salaries or feed a recruiting workflow. Every row carries Naukri's own job ID, company account ID and employer group ID, so repeated searches are easy to join without matching on company names.
What the Naukri Job Scraper returns
- Job identity:
job_id,title,url,posted_at(UTC) and the relative label shown on Naukri (posted_relative). - Company:
company,company_id,company_group_id, company page and logo, and whether the poster is a recruitment consultant. - Location and work mode: the advertised location text, each individual city in
locations, andwork_mode(office, remote or hybrid). - Experience:
experience_min_yearsandexperience_max_yearsas numbers, plus the original label. - Salary:
salary_minandsalary_maxas annual INR amounts when the employer discloses pay, orNot disclosedinsalary_textwhen it does not. - Skills and description: the skill tags of the listing and a plain-text description fragment.
- Company rating: the AmbitionBox rating and review count that Naukri includes on the search card.
How to scrape Naukri jobs without code
- Enter a keyword such as
python developer, or a city such asbangalore. You can supply both. - Set
max_itemsto the maximum number of unique jobs you want across the run. The default is 100 and the supported range is 1–10,000. - Optionally select posting age, candidate experience, work arrangement, employer type or salary bands.
- Start the actor. Download the dataset as JSON, CSV or Excel, or retrieve it with the Apify API.
For a search you have already configured on Naukri, copy the address bar into start_urls. You can provide up to 20 search URLs. Their query parameters are preserved, and their filters take precedence over the separate keyword and filter fields. The maximum row count applies to the entire run, including all supplied URLs. Pagination is automatic: the actor walks through the result pages (20 jobs per page) until it reaches your limit or the end of the search.
Input
The following input was verified against real Naukri search responses:
{"keyword":"python developer","location":"bangalore","max_items":100}
| Field | Meaning |
|---|---|
keyword | Job title, skill or company. Leave empty for a location-only search. |
location | City or comma-separated cities. Leave empty to search all locations. |
start_urls | HTTPS search URLs on www.naukri.com, including existing filters and an optional starting page. |
max_items | Maximum unique rows across the run; default 100. |
sort | relevance or date; applies when building a search from keyword and location. |
freshness_days | Jobs posted within 1, 3, 7, 15 or 30 days. |
experience_years | Candidate experience from 0 to 30 years. Zero includes fresher roles. |
work_mode | A list containing office, remote and/or hybrid. |
posted_by | company or consultant. Omit to include both. |
salary_range | Naukri bands such as 10to15 or 15to25, measured in lakh INR per year. |
Provide at least one of keyword, location or a search URL. Direct job detail URLs are not search inputs. A pasted search URL retains its own ordering and filtering, so changing a separate filter does not alter that URL. On Apify, pagination continues automatically; the cursor field is intended for API continuation and can be left empty in the actor form.
Output
Each job contains job_id, title, url, company, location, posted_at, source, platform and fetched_at. Naukri identifiers are delivered as strings, preserving leading zeroes. Posting timestamps are UTC with milliseconds, while posted_relative preserves the wording shown on the search card.
The additional fields include company account and group IDs, company links and logos, individual advertised locations, work mode, minimum and maximum experience, skills, a plain-text description fragment, company rating and review count, vacancies and external application links where present. Recruitment agencies are identified with is_consultant; an end client appears in hiring_for only when Naukri names it. Walk-in listings include their date label without dedicated contact names or phone numbers.
A real job from the recorded python developer search in Bangalore on 5 October 2026, with a disclosed salary of 10–22 lakh per year:
{"job_id": "051026039668","title": "python developer","url": "https://www.naukri.com/job-listings-python-developer-virtusa-bengaluru-5-to-8-years-051026039668","company": "Virtusa","company_id": "1354","company_group_id": "1186200","location": "Bengaluru","locations": ["Bengaluru"],"work_mode": "office","posted_at": "2026-10-05T13:28:29.438Z","posted_relative": "Few Hours Ago","experience_min_years": 5,"experience_max_years": 8,"experience_text": "5-8 Yrs","salary_text": "10-22 Lacs PA","salary_disclosed": true,"salary_min": 1000000,"salary_max": 2200000,"salary_currency": "INR","salary_period": "YEAR","skills": ["Artificial Intelligence", "Snowflake", "Python", "Intelligence", "Python Development", "Development"],"snippet": "Troubleshoot issues related to AI model performance,data quality,and system integration. Job Requirements : . 5-8 years of experience in developing AI applications using Python programming language","company_rating": 3.6,"company_reviews_count": 6613,"ambitionbox_url": "https://www.ambitionbox.com/reviews/virtusa-consulting-services-reviews","is_consultant": false,"is_walk_in": false}
The same search also returned listings whose pay was hidden. For those rows the numeric bounds stay null, for example Infosys job 250926036403 ("Python Developer (5 To 8 Years)", hybrid in Hyderabad, Chennai and Bengaluru) with salary_text Not disclosed, a 3.5 company rating and 52,758 reviews.
Salary and description interpretation
Disclosed numeric salaries use salary_min, salary_max, salary_currency and salary_period. Annual amounts are in the currency's base units: a disclosed 10–22 lakh INR range becomes 1,000,000–2,200,000 INR with period YEAR. A hidden salary has null numeric fields and retains its original salary_text, usually Not disclosed.
Internship compensation may be advertised as 15,000/month or Unpaid. These labels stay in salary_text; they are not converted into annual salary bounds. Missing experience stays null, including internships or walk-ins that have no experience label. Missing company review information also stays null instead of becoming a zero rating.
The snippet field is the description fragment supplied on the search page with HTML removed. It can be long for some employers, but it is not promised as the complete job description. The actor does not fill a full-description field from a fragment, infer a contract type, or assign a country merely because most results are in India. Naukri can show several cities or international locations in one listing.
Search totals and incomplete results
The searches key-value record shows each search, its first retrieved URL, the total result count reported by Naukri, successful page count, delivered unique row count and any warning. Totals are snapshots, and listings may change while a large run is in progress. Duplicate job IDs across pages and searches are delivered once, so overlapping searches can return fewer rows than their raw page counts suggest.
A genuine search with no jobs yields an empty dataset and a recorded not_found outcome. A blocked or unusable search page is reported as a source error. Earlier collected jobs remain available if a later page fails. Check the run output, errors and search warnings when fewer jobs arrive than requested. An unrecognized city can be ignored by Naukri; if the city cannot be confirmed in its facets, the run includes a warning that results may cover other locations.
Use cases
- Recruiting and sourcing: find which employers are hiring for a skill in a city this week, and which of them are agencies rather than direct employers.
- Salary benchmarking: compare disclosed annual INR ranges by role, city and experience band, while keeping undisclosed salaries apart instead of counting them as zero.
- HR tech and job aggregators: feed fresh Naukri listings into a job board, alerting tool or applicant matching system, keyed on stable job IDs.
- Labour-market research: track the number of open roles per skill, the share of remote and hybrid work, or hiring demand across Indian cities over time.
- Employer monitoring and sales leads: follow specific companies through
company_group_id, and combine hiring volume with their company rating and review count.
Naukri Job Scraper compared with other options
| This actor | Naukri API | Browser extensions | Own script | |
|---|---|---|---|---|
| Public job search | Yes, keyword, city or URL | Not public; recruiter and employer integrations only | One page at a time | Yes, if you maintain it |
| Annual INR salary as numbers | Yes, hidden pay stays null | n/a | Text only | Your own parsing |
| Skills and company rating | Yes | n/a | Varies | Your own parsing |
| Pagination and de-duplication | Automatic, up to 10,000 jobs per run | n/a | Manual | Your own code |
| Scheduling, API and exports | Apify schedules, API, JSON, CSV, Excel | n/a | Manual download | Your own setup |
Many people search for a "Naukri API" to get job data. Naukri's integrations are meant for recruiters posting and managing their own jobs, not for reading public search results, so this actor is the practical alternative: you call it through the Apify API with the same input as in the form and get JSON back.
Other Naukri scrapers in the Apify Store return the raw fields from the search page. This actor focuses on completeness and clean types: salaries converted to annual INR numbers, experience as numbers, skills as a list, company IDs for joining, and the company rating and review count on every row where Naukri supplies them.
Pricing
Pay per event, with no monthly fee:
| event | price |
|---|---|
| Actor run started | $0.001 per run |
| Job listing returned | $0.0005 per job |
Some examples:
- 10 jobs: $0.001 + 10 × $0.0005 = $0.006
- the default of 100 jobs: $0.001 + 100 × $0.0005 = $0.051
- 1,000 jobs: $0.001 + 1,000 × $0.0005 = $0.501
You only pay for jobs that are actually delivered. Pagination does not add another start event, and duplicate job IDs are not charged twice. A valid search that finds nothing costs only the run start; invalid input costs nothing. The pricing tab of the actor shows the active amounts.
Users without a paid Apify plan receive at most 10 jobs per run. The actor limits the requested volume before collecting and charges only for delivered rows. Paid users can request the full supported limit. This cap applies to the complete run, including multiple search URLs.
FAQ
Does the Naukri Job Scraper collect full job descriptions?
It returns the search-page fragment as snippet. Open the job URL for the complete advertisement. No separate job-detail retrieval is performed.
Is there an official Naukri API for job search data?
Naukri offers integrations for recruiters and employers to manage their own postings, not a public API for reading job search results. This actor gives you that data through the Apify API instead, as JSON, CSV or Excel.
Are AmbitionBox ratings included for every company?
Only when Naukri includes them. company_rating, company_reviews_count and ambitionbox_url are null when the search response has no company review data.
Can I collect more than 100 jobs?
Yes. Increase max_items up to 10,000. The actor follows pages automatically and keeps one row per job ID throughout the run. Source exhaustion or a recorded error may end collection before the limit.
Why is a salary null even though salary_text contains an amount?
Internship stipends and undisclosed annual pay do not supply reliable annual numeric bounds. The original label is preserved so you can interpret it without mistaking a monthly stipend or hidden salary for zero annual pay.
Can I export Naukri jobs to Excel or Google Sheets?
Yes. Every run stores its jobs in an Apify dataset that you can download as Excel, CSV or JSON, or connect to Google Sheets through Apify integrations.
Can I join output from different runs?
Use job_id to compare jobs and company_group_id to group employer brands. company_id identifies the particular Naukri account or branch. Keep fetched_at and the search metadata alongside snapshots when tracking changes over time.
Is it legal to scrape Naukri?
The actor only collects job listings that Naukri shows publicly to every visitor, without logging in, and it does not collect recruiter contact details. You remain responsible for using the data in line with applicable law and Naukri's terms, especially when you store or republish it.