We cross-check every AI-generated number against your real resume. If a metric isn't in your data, it never reaches a recruiter. Teal, Huntr and Kickresume don't do this. Here's the architecture.
Most AI career tools generate impressive-sounding metrics that aren't on your resume. Recruiters check. When the numbers don't match LinkedIn, your application goes in the bin and your reputation goes with it.
What ChatGPT, Teal, Huntr, Kickresume ship
"Spearheaded a cross-functional team to drive a 37% increase in revenue, leveraging cutting-edge AI to deliver robust, scalable solutions."
37% — invented. Spearheaded, leveraged, robust — AI tells. The recruiter rejects in 3 seconds.
What ApplyArc ships (after metricVerifier + Anti-Slop)
"Rebuilt the onboarding flow with two engineers. Cut signup drop-off from 41% to 18% over Q3."
Every number cross-checked against your resume. No AI tells. Real verbs.
Three layers. Every AI output goes through all three before you see it. No exceptions.
GPT-5.4 (flagship) for high-stakes work — cover letters, salary negotiation, interview prep, job match. GPT-5.4-mini for everything else. Strict JSON schema enforced at the model level.
Revenue figures, percentages, multipliers, team sizes, years, durations. Each numeric token is cross-referenced against your resume context. If it's not there, it's a hallucination.
If a number was invented, the system retries with an explicit ban on fabricated metrics. Up to 2 retries. After that, fallback to a vaguer-but-honest version. You never see the lie.
const numbers = extractNumbers(aiOutput);
const resumeNumbers = extractNumbers(userResume);
for (const n of numbers) {
if (!resumeNumbers.includes(n)) {
// Hallucination caught.
return retry(prompt, { strictMode: true });
}
}
return aiOutput; // Every number verified.Output-side validation is hard. It needs the user's structured resume context, a numeric extraction layer, a retry loop, and the engineering culture to ship a stricter product than the model wants. Most teams optimise for speed of generation. We optimise for accuracy of generation.
Verified April 2026 against public product surfaces. We rebuild this comparison every quarter.
Every AI-generated output runs through metricVerifier. It extracts every numeric token, cross-references your stored resume, and silently retries with a stricter prompt if anything was invented. Up to 2 retries before falling back to the safest version.
Three steps. (1) The AI generates your output — cover letter, resume bullet, interview answer. (2) metricVerifier extracts every numeric token (revenue figures, percentages, multipliers, team sizes, years). (3) Each number is checked against your resume context. If a number isn't there, the system retries with the explicit instruction not to invent metrics. Up to 2 retries before falling back to the safest version.
It can write a vague claim that the verifier won't catch — for example 'improved customer satisfaction' without a number. But it physically cannot ship 'improved satisfaction by 37%' if 37% isn't in your resume. Every fabricated metric is blocked.
After fact-checking, every output is scanned against 235+ AI fingerprints: 32 AI verbs (spearheaded, leveraged, orchestrated), 29 AI adjectives (robust, seamless, comprehensive), 7 adverbs, 65 phrases, 17 weak ownership patterns, 15 AI openers, plus 11 regex detectors for em-dashes, tricolons (X, Y, and Z), and prepositional openers. Recruiters spot AI in seconds. We strip the giveaways before they ship.
Not as of April 2026. Teal, Huntr and Kickresume ship the AI's first draft. They have no output validation layer and no AI-tell scanner. We've checked their public product surfaces.
It's the architecture. The fact-checker lives in metricVerifier.js inside our backend. The pattern library lives in shared/aiTells.json (235+ patterns) and shared/aiPatterns.cjs (11 regex detectors). The retry loop lives in generateAIContent.js with a maxRetries cap of 2. We rebuild this every deploy.
After 2 retries, the system falls back to a stricter prompt that bans numerical claims entirely and ships a vaguer-but-honest version. We'd rather you have a less impressive sentence than a fabricated one. Inflated metrics are the fastest way to get blacklisted by a recruiter.
Yes. Every AI generation on ApplyArc — Free or Pro — runs through metricVerifier and the AI-tell scanner. Free users get 5 fact-checked generations per month. Pro users get unlimited. The architecture is identical. Safety isn't a feature, it's the floor.
5 fact-checked AI generations every month on the free plan. No card. 30 seconds to set up.
No credit card. Cancel anytime — 1 click.
Voice Guard rejects AI-sounding bullets
Teal doesn't fact-check AI output
Huntr ships raw model output
Kickresume has no validation layer
£19/mo. 18 AI tools. Cancel anytime.
The 7 words that flag a CV as AI