ResumeJSON

Resume parser for recruiters: what to look for, and how to test one

A resume parser reads a CV and returns its contents as labelled fields: name, email, phone, work history, education, skills. For a recruiter that means a candidate record fills itself in instead of being typed from a PDF. Most recruiters already use one without knowing it, because the applicant tracking system (ATS) runs a parser the moment a CV is uploaded. The real question is whether that parser is good enough for your CVs, and what to do when it is not.

This guide is for the recruiter or sourcer who works through CVs all day and wants to judge a parser without reading a spec sheet. It covers the three ways you end up with one, the fields worth checking, a short test you can run on your own files, and where a free tool is all you need. We build ResumeJSON, a parser aimed at developers, so read the parts about it as written by an interested party. Everything about our product was checked against the live site in October 2026.

The three ways a recruiter gets a parser

RouteWhat it isBest forWatch out for
Built into your ATSThe parser that ships with the system you already useTeams happy with their current recordsYou cannot swap it, and you rarely see what it got wrong
A standalone parserA separate product or free web tool you feed CVs toCleaning up a folder, checking a few files, comparing parsersOne more place to copy results out of
A parser inside your own workflowAn API your developer connects to your forms, inbox or databaseAgencies and job boards with a steady flow of CVsNeeds someone who can write the connection

Start with the first. If the ATS parser fills your records correctly, you do not need another one. The rest of this page is for the case where it does not, or where you do not have an ATS at all and your CVs live in a shared drive and an inbox. Our guide to building a candidate database from CVs you already have covers that second situation in more depth.

The fields that decide whether a parser is useful

A parser that gets the name right and the work history wrong is worse than useless, because the record looks complete. These are the fields to check, in the order they hurt when wrong.

Our own parser follows that last rule: a field is null when the resume does not state it, never an empty string and never a guess. Whatever parser you pick, test for it.

A 20-CV test you can run in an afternoon

Vendor demos use clean CVs. Yours are not clean, so test on yours. This takes a short session and one spreadsheet.

  1. Pick 20 real CVs you have already read. Mix them on purpose: a few two-column designs, a few plain Word files, two scans or phone photos, one in another language, one unusually long career.
  2. Write down the right answer for five fields on each: email, current job title, current employer, most recent degree, and number of years worked. You already know these, so it takes a minute per file.
  3. Run every CV through the parser and paste the five fields next to your answers.
  4. Mark each cell right, wrong or empty. Keep "wrong" and "empty" apart. Wrong is the expensive one.
  5. Look at where the misses cluster. If every two-column CV fails, you have learned something the average score would have hidden.

A parser that is right on most of the 100 cells and empty rather than wrong on the rest is usable. One that is confidently wrong on a fifth of them is not, whatever its marketing says. This is also the honest way to compare two parsers: same 20 files, same five fields, no one's benchmark but your own. For the multilingual and scanned cases specifically, see how multilingual parsing breaks and how to test it and what to do when the CV is a scan.

When a free tool is all you need

If you parse a handful of CVs a week, or you are running the test above, you do not need a subscription or an integration. The free parser on our site takes a CV and shows the JSON on the same page.

Free parserWhat it does
InputA PDF, a DOCX, a photo or scan of a printed page, or pasted text
SizeFiles up to 8 MB, pasted text up to 20,000 characters
AccountNone. No signup and no API key
StorageThe document is not stored
LanguageOutput in the CV's own language, or one you choose
LimitOne CV at a time, with a one-click check to keep scripts out

Open the free parser and drop a file in. The result is JSON, which reads like a labelled list: you can see at a glance whether the email, employer and dates landed where they belong. It is meant for checking and one-off use. It is not a way to process a folder of 400 CVs, because you would be pasting 400 times.

When a recruiter needs more than the web page

The moment you want every incoming CV parsed automatically, you have left the web page behind. Two situations come up most:

For these, our API takes one CV per request (PDF, DOCX, text or an image) and answers on the same request with the fields. As of October 2026 it is sold through RapidAPI at these plans, which are shown on our quickstart:

PlanPriceIncluded
Basic$0100 parses a month, a hard cap that cannot bill you
Pro$0Pay per use at $0.05 a parse, no monthly fee
Ultra$29 a month1,000 parses, then $0.045 a parse
Mega$99 a month5,000 parses, then $0.018 a parse

There is no batch endpoint: a folder of CVs means one call each, with the concurrency handled by whatever you build. If you are not the person who will write that, hand your developer our guide to bulk resume parsing and the automated screening page, which explains where parsing stops and rules begin.

When to stay with what you have

Be honest about whether you need any of this.

A short checklist before you choose

Run the 20-CV test on whichever you shortlist. Ten minutes of your own data tells you more than any comparison page, including this one.

All articles