Screening that shows its evidence instead of scoring a person
Ascend reads the CVs you already have, strips the personal details that have no business in a hiring decision, and measures each candidate against a real job role's requirements — marking every one evidenced, claimed or absent, with the sentence from the document that earned the mark.
Three words, and the quote behind each one.
Every other tool in this category returns a percentage. A percentage is a guess with a decimal point: there is no defensible rule that turns “five years of Java” into 82%, and when a rejected candidate or a regulator asks how the number was reached, there is no answer that survives the question.
So Ascend does not emit one. Each requirement on the job role comes back as:
- Evidenced — the CV describes the person doing the thing, and the sentence is shown.
- Claimed — the CV lists the skill but never shows it in use. A keyword in a skills list is a claim, and it is labelled as one.
- Absent — nothing in the document mentions it. Said plainly, rather than folded into a score that hides which part was missing.
This is more honest than a match percentage and strictly more useful: it tells a recruiter which requirement is unmet and what the candidate actually wrote, which is the thing they would have opened the CV to find.
The quote is checked against the document, in code.
A model asked to cite a CV will sometimes produce a sentence that reads perfectly and does not appear anywhere in it. One fabricated quote shown to one recruiter destroys the premise permanently, and no amount of prompting makes a model incapable of inventing a plausible line.
So every quote is verified in code against the source document before it is stored. A quote that cannot be found is discarded and the claim is marked unverified — the claim survives, the sentence does not, because a fabricated sentence kept on file is one careless template away from being shown as something the candidate wrote.
What the model never sees.
CVs in much of the world carry a date of birth, a sex, a marital status, a religion, a state of origin and a photograph by convention. If those reach the model that assesses the candidate, you have built a discrimination engine by accident — and they are sensitive personal data under the NDPA and GDPR besides.
They are stripped at parse time: before the model, before the search index, before anything is written down. Images are discarded entirely. The count of removed fields is kept on the record so you can evidence that it happened.
- The candidate's name is kept, because you have to be able to contact them — and left out of the search index, because a name carries inferable race and sex.
- Location is reduced to a city and region. Never the street address, which is a geographic proxy.
- A CV that arrives as a scan or a phone photograph is read as an image, and the same stripping runs on what comes back before any of it is stored.
There is no endpoint that rejects anyone.
Not a permission, not a configuration, not a default someone could change in a hurry: there is no route in the product that sets a rejected outcome by inference. An auto-reject cannot be switched on later by accident, because the thing that would do it was never built.
Recruiting is also on the list of areas where AI agents can never act unattended, alongside performance and succession. Ascend shortlists, explains and evidences. A named person decides.
| Typical AI screening | Ascend | |
|---|---|---|
| What you get back | A match percentage | Evidenced / claimed / absent, per requirement |
| Why that result | A model's judgement, unquoted | The sentence from the CV, verified against it in code |
| Protected details | Usually reach the model | Stripped before the model, before the index, before storage |
| Automatic rejection | A setting | No such route exists |
| Whose candidates | A vendor's database of strangers | The pool your own company already received |
Not a database of strangers.
Ascend searches the CVs your company already has — the careers inbox, the folder of applications, the people who applied last year for a role you have open again. That pile is almost always larger and warmer than anyone realises, and nobody can search it today because it is a folder.
What makes it worth more over time is the thing only you have: who you actually hired, and how they turned out. A candidate who becomes an employee keeps the link, so the claims on their CV can eventually be read against what they went on to prove.
- Plain-language search with the parsed filters shown, so you can see how your question was read and correct it.
- Candidates are kept on a retention clock and deleted when it expires, rather than accumulating forever.
- A CV claim never becomes skill evidence. Being hired on a CV that says “AML” does not write an AML skill level — that still has to be proven.
What buyers ask about hiring.
- Does it rank or score candidates?
- It orders search results by relevance to your query, the way any search does. It never produces a fitness score for a person, and it never rejects anyone.
- Can it read scanned CVs and photographs?
- Yes. A document with no usable text layer is read as an image. If it still cannot be read, it is kept as a visible count with the filename, never dropped silently — a pool of 400 that is really 260 plus 140 invisible failures looks complete and is not.
- Does this replace our ATS?
- No. Ascend does not run a stage pipeline or send candidate emails. It answers who in your existing pile can do a specific job, and hands the person you hire to onboarding.
- What happens when someone is hired?
- They become an employee record linked to the candidate they were, and their onboarding plan starts from their hire date. The requirements they were short on are the ones onboarding sets out to prove.
Where hiring connects.
Bring one job role. We'll run the loop on it.
Thirty minutes, your own documents, one job role. You'll see the company brain built, the drafts it produces, the sources behind them, and where the autonomy dial sits before anything publishes.