ATS CV checker

Find out what your CV is missing before they do

Paste the advert and see it marked up requirement by requirement — evidenced, only asserted, or absent. No mystery percentage: the arithmetic is shown, and you can argue with it.

Free to start. Bring the advert's text — a job title alone is not enough to check against.

How it works

  1. Start from the advert, not the CV

    You cannot find a gap without the thing you are being measured against. Paste the advert text, name the company and the role, and it stays attached to that CV — so every later check is against this job, not a general idea of good.

  2. The advert is read once

    One model pass over the advert, and then it is done reading. That pass pulls out the requirements the advert names — phrases of one to four words, each checked to appear verbatim — how much weight this advert puts on each of four areas, and a map of wordings that mean the same thing. It never returns a number. What it found is stored, so nothing re-reads the advert afterwards and the ground does not shift under you.

  3. The number is arithmetic, not opinion

    From there the number is arithmetic over that stored reading, with no model involved. Two saves of the same CV against the same advert in the same year give the same number — so when it moves, you moved it. It recalculates every time you save.

  4. See the gap, in the advert's own words

    This is the part you came for. The advert text is tinted by how you answered it: shown in its own words, shown in different words, claimed only in a summary, or absent. Beside it, one requirement list, ordered so what you answered sits above what you did not — each row marked with how you answered it.

Why nobody tells you what was wrong

Almost nobody gets told. The application goes in, and what comes back is either an interview or silence — and the silence carries no information you can act on.

Part of the reason is structural. An applicant tracking system is the software an employer uses to receive applications and move them through hiring: a database with a workflow attached, configured by that employer, and largely worked in by the recruiters and hiring managers on the other side. It is not a judge that files a written opinion.

That is also where "ATS score" tools go astray. They describe a machine that reads your CV and discards it, then sell you a number that predicts that machine. Parsing is real — a document must become fields before anyone can search it. But how a given employer ranks what was parsed is configured by that employer and generally not published, and the rules differ from one to the next: the filter one switches on, the next never touches.

So no tool can honestly tell you why that particular application went quiet, and this one does not pretend to. It answers the question that is answerable, and answerable before you send: does this CV evidence what this advert asked for?

What you can find out instead

One thing, checkable before you apply: a weighted comparison between the requirements the advert named and the evidence your CV actually puts on the page.

Four areas, three of them set by the advert

Hard skills, seniority match, and soft skills with domain knowledge are scored only on what this advert raised. The weights are set per advert and normalised to exactly 100 — an advert built around stakeholder work should not be marked like one built around a toolchain — and an area it never mentions is not held against you.

Context and recency is the exception, and it is the one people are surprised by: no requirement is ever filed under it. It measures how deep and how current the evidence behind your answered requirements is, it carries between a fifth and just over a third of every score, and it always counts. If the advert named requirements and your CV evidences none of them, this area scores zero rather than being waived.

Where a claim sits matters more than whether it appears

A bullet carrying a real number counts most, a plain bullet less, a skill alone in a list less again. A claim made only in a tagline or summary counts nothing — anyone can assert a skill in one sentence, which is exactly why it proves nothing. Those phrases are not thrown away: they are listed for you, under "Said, but not shown".

Recency, and concentration rather than repetition

Evidence older than about five years is discounted, and depth is read as tenure: a skill evidenced inside a long-running role outweighs the same skill inside a short one, with concurrent roles counted once rather than stacked. Undated content is not penalised. Three things subtract points: one term concentrated across a large share of a single section, a single line packed with the advert's phrasing, and a gap of a year or more between roles in the recent past — the rule only looks at the last five years. The exact thresholds for the first two are not published, because knowing where the line sits is knowing how to stop just short of it. A decade of one skill is not punished — a section where that phrase was sprayed into every entry is.

One boundary worth knowing, because it catches people out: the check reads the CV as printed. Entries you hid, entries past what the template has room for, and bullets you switched off count neither way — if it is not on the page, it is not evidence.

Disagree with it, and it moves

A checker you cannot contradict is a black box with better typography. So the arithmetic is on screen: each area with the weight this advert set and the points before deductions, and every deduction named in plain language. The requirement set is yours as well — highlight a phrase the reading missed to track it, or drop one that does not apply with the × on its row. Either edit moves the score, the list and the tint together, because all three read the same terms.

Where it is guessing, it says so. Depth and recency are inferred rather than known: the check finds a skill's wording inside your dated roles and uses their tenure. The interface admits that, and you can attribute a skill to specific roles yourself instead.

A CV that has not been read against its advert yet can be checked on demand — the one scoring step that calls a model because you asked it to, and rate-limited accordingly. After that first reading the number keeps itself current from your saves, with no further model call and no further cost.

What this cannot tell you either

Two scores are not comparable

Each advert sets its own weights, so the same CV scores differently against two jobs for reasons that have nothing to do with your fitness for either. A 78 here and a 64 there does not rank the two applications. The number is only meaningful inside the pairing it was computed for.

It predicts no decision

The score lives in your account and nowhere else. It is attached to nothing you send, no employer ever sees it, and it is not a probability of an interview. It tells you what is missing — not what will happen.

It is not a file-compatibility test

The comparison runs over your structured career record, never over the exported document. It cannot tell you how someone else's parser handles your columns — and a tool that claims to test that is guessing at software it cannot see.

It measures the CV, not you

The check only sees what is written down. A requirement marked absent may be something you have done for years and never wrote a line about — which is the most useful thing it can tell you. The fix is a bullet, not a better number.

Questions people ask

Will a high score get my CV through an employer's ATS?
No — and treat any tool that says otherwise with suspicion, because it is selling you a prediction about software it has never seen. Employers run different systems under rules they configure themselves and generally do not publish.
What a high score does mean: this CV evidences what this advert asked for. That is a good reason to send it. It is not a forecast of what happens next.
Can I compare the scores I got on two different jobs?
No. The two numbers came out of two different weightings, so the higher one is not the better fit — comparing them tells you about the adverts, not about you. What does carry across is the requirement list: an advert whose requirements you cannot evidence is telling you something real about that application, whatever percentage sits above it.
My CV mentions that skill — why is it marked as missing?
Almost always one of three things. It appears only in your tagline or summary, which scores nothing. It sits somewhere hidden on this CV, and only what prints is read. Or it is worded differently enough that the alias map missed the connection — in which case highlight the phrase in the advert and track it, and the score, the list and the tint all move together.
Does the score change on its own?
Not from anything on our side re-reading the advert. That reading is stored, and every recalculation afterwards is arithmetic over it, so the number moves when you move it: when you save a change to the CV, and when you track or dismiss a requirement.
One thing shifts it without you touching anything, and it is worth knowing: recency is measured against the current year. Evidence crossing the five-year line, or an employment gap ageing out of the recent window, can move a number you did not edit.
Where does the advert text I paste go?
It is stored with the CV you created from it, so the score can be recomputed later without asking you for it again. Recomputing sends it nowhere — that step is arithmetic over the stored reading.
It is sent to a third-party AI provider when it is read, and creating a CV from an advert is more than one such request: summarising the advert, extracting the requirements the score is built from, and composing the tailored draft are separate calls, with a review pass over that draft when the run has room for it.
The privacy notice names the providers and lists these purposes separately; it is the authoritative document on how that data is handled.