"We need someone who has done all of this. Mark everything Required."
I hear some version of that on almost every job intake.
It was never a great instinct. Right now it's a bad one.
Candidates rewrite their resumes to mirror your job description, often with AI. In a Robert Half survey of more than 2,000 US hiring managers, 67% said reviewing AI-generated applications has slowed hiring down.
When every resume echoes your posting, everybody appears to meet all seven bullets. Reading harder doesn't fix that. Neither does a longer checklist.
What fixes it is evidence the candidate didn't write.
In SquarePeg, that comes in three layers: company enrichment, weights and authenticity confidence. Each one separates candidates the resume alone can't.
A resume is the candidate's own description of themselves. It always was.
What's changed is how cheap it is to tune that description. Paste in the job post, ask for a rewrite, and the titles, keywords and phrasing line up with your intake notes. The person behind it might be a great fit. They might not. The words no longer tell you which.
So any screen that only reads the words, whether that's a person skimming or a keyword match, gets less useful every month.
SquarePeg enriches every company a candidate has worked for. Each work experience gets company data a resume doesn't carry:
That data is shown on the candidate's profile, next to the original resume text, which is never changed.
And it's what the score reads alongside the resume. So a criterion like "has worked at a Series A to C B2B software company with 50 to 500 employees" isn't checked against how the candidate described their employer. It's checked against the employer.
Two applicants can both write "B2B SaaS sales." If one spent two years at a 120-person, Series B software company and the other spent three months at a regional bank, enrichment is how the score knows the difference.
A rewritten resume can copy your wording. It can't change a company's headcount.
Every criterion you write carries a weight. Required counts 3x. Preferred counts 2x. Bonus counts 1x.
Each criterion is scored from 0 to 100 against the candidate's resume, enriched company data and any screening answers you named. The total is a weighted average of those scores.
Which means the weights are how you say what matters MORE.
Mark everything Required and you've told the system that everything matters the same amount. Every candidate gets multiplied by the same number. The spread you were hoping for disappears, right when the resumes are already converging.
Imagine you're hiring 3 SDRs and your intake notes say this:
Seven things. All Required.
Now two applicants. One has two years of outbound at a Series B SaaS company, never touched Outreach, no degree. The other has a degree, three months at a bank, and used Salesforce once. Both resumes use the words "B2B," "outbound" and "Salesforce."
With everything at 3x and criteria written as keywords, they can land within a few points of each other.
Here's the same role set up to use all three layers:
Five criteria. Two Required. The first applicant now ranks well above the second, and when you open the profile you can see why: the outbound criterion scored high with evidence from the resume, the company criteria scored high from enriched data, and the degree counts for 1x.
Same candidates. Different instructions. Different reading order.
Our own setup guidance says 5 to 10 criteria works well, with 2 to 4 of them Required. If you can't name the one you'd drop first, you haven't prioritized yet.
Ranking assumes the resume belongs to a real person who did the work. That assumption is getting weaker too.
Authenticity confidence checks each candidate's resume, LinkedIn profile, phone number and email address for signals that something doesn't hold up. A few of them:
The signals roll up into a confidence level: high, mixed, limited, low or unknown. Candidates with mixed, limited or low confidence get a flag next to their name, and you can filter by level or by individual signal.
You turn it on per job, and you can turn it on for a job that's already been scored. Your criteria and scores don't change.
It's built to point a recruiter at the profiles worth a second look. It doesn't reject anyone, and a flag isn't a verdict.
SquarePeg scores each criterion from its Requirement text. The label is a short name for you. The Requirement is what gets read.
Leave out traits a resume can't show. "Strong communicator" and "culture fit" give the score nothing to point at. Protected characteristics like age, gender or nationality aren't scored.
A low score still ranks a candidate. It doesn't remove them. If something is truly a deal-breaker (work authorization, a required license, a timezone), that's an eligibility rule, not a Required criterion.
Eligibility rules mark applicants Ineligible, and ineligible applicants aren't scored. Use them only for real deal-breakers. Preferences belong in criteria.
Run the first scoring pass, then open a few of your top scorers and a few of your bottom scorers. Read the explanation for each criterion, and check the enriched company data behind the high ones.
If a score looks off, the wording of that criterion is usually the cause. Edit it and rescore. There's no limit on rescoring.
That loop is the point of showing the work. You can't fix a number. You can fix a sentence you wrote.
None of these layers makes SquarePeg decide anything.
The score ranks, flags and explains. Authenticity confidence flags for review. There's no auto-reject below a line and no auto-advance above one. A recruiter still advances or rejects every candidate.
Anyone can rewrite a resume to match your job description.
It's a lot harder to rewrite the companies behind it.
Connect your ATS and SquarePeg scores your applicants, flags suspicious candidates, resurfaces past applicants and finds new ones, with the evidence behind every score. Credits work across every feature, there are no seat fees, and rescoring is always free.
