Scoring Methodology
The Big Picture
Section titled “The Big Picture”When you scan your resume, ATS Screener evaluates it against 6 platform profiles independently. Each profile is a mathematical model with its own weights, parsing strictness, keyword matching strategy, and platform-specific quirks.
The final score for each platform comes down to three steps:
- Score each of the 6 dimensions individually (0-100 each)
- Compute a weighted sum using that platform’s specific weight vector
- Apply quirk adjustments for platform-specific edge cases
Here’s the formal definition.
Composite Score Formula
Section titled “Composite Score Formula”For a given platform , the overall score is:
where:
- is the score for dimension
- is the weight assigned to dimension by platform
- is the total quirk adjustment for platform (always )
The six dimensions through are:
| Index | Dimension | What It Measures |
|---|---|---|
| Formatting | Parser compatibility, layout cleanliness | |
| Keyword Match | Term overlap with JD or industry standards | |
| Section Completeness | Presence of required resume sections | |
| Experience Relevance | Bullet quality, action verbs, recency | |
| Education Match | Degree presence, field, date formatting | |
| Quantification | Ratio of quantified achievement bullets |
Weight Constraint
Section titled “Weight Constraint”All platform weight vectors are normalized:
This means the weighted sum produces a value in before quirk adjustments. I verified this for all 6 profiles in the codebase.
Platform Weight Vectors
Section titled “Platform Weight Vectors”Each platform weighs the 6 dimensions differently. These weights come from researching how each platform actually behaves: strict keyword matchers like Taleo weight keywords heavily, while modern platforms like Lever care more about experience quality.
| Platform | (fmt) | (kw) | (sec) | (exp) | (edu) | (quant) | Strategy | |
|---|---|---|---|---|---|---|---|---|
| Workday | 0.25 | 0.30 | 0.15 | 0.15 | 0.10 | 0.05 | 0.90 | exact |
| Taleo | 0.20 | 0.35 | 0.15 | 0.15 | 0.10 | 0.05 | 0.85 | exact |
| iCIMS | 0.15 | 0.30 | 0.15 | 0.20 | 0.10 | 0.10 | 0.60 | fuzzy |
| Greenhouse | 0.10 | 0.25 | 0.10 | 0.25 | 0.10 | 0.20 | 0.40 | semantic |
| Lever | 0.08 | 0.22 | 0.10 | 0.30 | 0.10 | 0.20 | 0.35 | semantic |
| SuccessFactors | 0.25 | 0.25 | 0.20 | 0.15 | 0.10 | 0.05 | 0.85 | exact |
is the parsing strictness parameter, which I’ll explain below. Bold values highlight the highest weight in that column.
A few things jump out from this table:
- Taleo has the highest keyword weight (0.35). This tracks with reality: Taleo’s base configuration does literal boolean keyword matching.
- Lever has the highest experience weight (0.30). Lever is designed around structured interview feedback, so experience quality matters more than keyword stuffing.
- Greenhouse and Lever weight quantification at 0.20 while legacy systems barely care (0.05). Modern platforms value measurable impact.
- Formatting ranges from 0.08 (Lever) to 0.25 (Workday/SuccessFactors). Makes sense: Lever uses a modern parser that handles most formats, while Workday’s parser is notoriously strict.
Worked Example
Section titled “Worked Example”Say your resume scores: across the six dimensions.
Workday:
Lever:
Same resume, different scores. The spread between the highest (SuccessFactors at 79.0) and lowest (Lever at 73.7) is 5.3 points, and it comes entirely from how each platform prioritizes different qualities. This is realistic since most ATS platforms care about broadly similar things but weight them differently.
Format Scoring (Deduction Model)
Section titled “Format Scoring (Deduction Model)”Format scoring uses a deduction model: you start at 100 and lose points for each formatting issue. The penalty for each issue is scaled by the platform’s parsing strictness .
where is the base penalty for formatting issue and is the platform’s parsing strictness.
Base Penalties
Section titled “Base Penalties”| Issue | Base Penalty () | Rationale |
|---|---|---|
| Multi-column layout | 15 | Parser reads text out of order |
| Tables detected | 12 | Content inside tables may be skipped |
| Images/graphics | 8 | Text in images is invisible to parsers |
| Pages > 2 | 5 | May be truncated |
| Word count < 150 | 10 | Likely a parsing failure or empty resume |
| Word count > 1500 | 3 | Minor; consider trimming |
| Special char ratio > 5% | 8 | Encoding issues or bad PDF extraction |
| All-caps lines > 3 | 3 | Can confuse section detection |
| Inconsistent bullets (> 2 styles) | 2 | Minor formatting inconsistency |
Strictness Scaling
Section titled “Strictness Scaling”The key insight is that the same formatting issue hurts you differently depending on the platform. A multi-column layout on Workday () costs you points, but on Lever () it only costs points.
Worst case (every issue present at once):
| Platform | Total Deduction | Format Score | |
|---|---|---|---|
| Workday | 0.90 | 59.4 | 40.6 |
| Taleo | 0.85 | 56.1 | 43.9 |
| SuccessFactors | 0.85 | 56.1 | 43.9 |
| iCIMS | 0.60 | 39.6 | 60.4 |
| Greenhouse | 0.40 | 26.4 | 73.6 |
| Lever | 0.35 | 23.1 | 76.9 |
Even the absolute worst-case resume doesn’t hit 0 on any platform, because and the max penalty sum is 66, so the floor is . The format score can only reach 0 if , which is impossible since .
Keyword Matching
Section titled “Keyword Matching”This is probably the most important scoring dimension for job seekers, especially in targeted mode. Each platform uses one of three keyword matching strategies.
The Formula
Section titled “The Formula”where:
- = set of exact keyword matches between resume and JD
- = set of synonym/partial matches (strategy-dependent)
- = set of distinct keywords extracted from the job description
- If (no JD provided), by convention
The 0.8 coefficient on synonym matches is intentional. A synonym match is close but not as strong as an exact match. If the JD says “Project Manager” and your resume says “PM”, that’s a synonym match, worth 80% of a direct hit.
Matching Strategies
Section titled “Matching Strategies”Exact (Workday, Taleo, SuccessFactors): Only populates . Synonym set . You need the literal terms from the JD.
Fuzzy (iCIMS): Populates both and using a synonym database and canonical form mapping.
Semantic (Greenhouse, Lever): Same formula as fuzzy, but additionally includes partial string matches (substring containment where both terms are characters).
Practical Impact
Section titled “Practical Impact”With , , and :
- Exact:
- Fuzzy:
That 13-point difference from synonym matching is significant. It’s one of the reasons a resume might pass on Greenhouse but fail on Taleo.
Quantification Score
Section titled “Quantification Score”The sixth dimension, quantification, is derived from the experience analysis:
where is the number of experience bullets containing quantified achievements (numbers, percentages, dollar amounts) and is the total number of experience bullets.
A resume with 3 out of 10 bullets containing numbers scores . A resume with 8 out of 10 scores .
This dimension matters a lot more on modern platforms. Greenhouse and Lever weight it at 0.20 (one-fifth of your total score), while legacy systems like Workday and Taleo only weight it at 0.05. The reasoning: modern platforms with structured scorecards surface quantified achievements to reviewers, so they carry more signal.
Quirk Adjustments
Section titled “Quirk Adjustments”Every platform has quirks: specific behaviors that don’t fit neatly into the six dimensions. These are modeled as conditional penalty checks that fire after the weighted sum.
where is the penalty value for quirk on platform , and is the indicator function (1 if the condition is true, 0 otherwise). The negative sign means quirks always reduce the score.
Currently Modeled Quirks
Section titled “Currently Modeled Quirks”| Platform | Quirk | Condition | Penalty |
|---|---|---|---|
| Workday | Non-standard headers | > 2 unrecognized section headers | 5 |
| Workday | Page limit | > 2 pages | 8 |
| Taleo | Low keyword density | < 5 skills detected (with JD) | 10 |
| Taleo | Missing standard sections | > 1 required section missing | 8 |
Full Score Assembly
Section titled “Full Score Assembly”Putting it all together for a Workday example:
Given and one triggered quirk (non-standard headers):
Passing Thresholds
Section titled “Passing Thresholds”Each platform has a threshold that determines whether your resume “passes” the initial filter. These are set based on research into typical auto-reject cutoffs:
| Platform | Passing Score | Reasoning |
|---|---|---|
| Workday | 70 | Strict Fortune 500 systems tend to filter aggressively |
| Taleo | 65 | Legacy boolean matching has some tolerance |
| iCIMS | 60 | ALEX parser is more forgiving |
| Greenhouse | 55 | Designed for human review, lower auto-filter bar |
| Lever | 50 | Minimal auto-filtering by design |
| SuccessFactors | 65 | Enterprise standard, moderate strictness |
The pass/fail determination is simply:
where is the passing threshold for platform .
Cross-Platform Divergence
Section titled “Cross-Platform Divergence”One of the things I wanted to demonstrate with this tool is that the same resume genuinely scores differently across platforms. It’s not just the thresholds that differ; the weights create real separation.
For :
| Platform | Score | Threshold | Result |
|---|---|---|---|
| Workday | 73.00 | 70 | Pass |
| Taleo | 72.25 | 65 | Pass |
| iCIMS | 71.25 | 60 | Pass |
| SuccessFactors | 74.00 | 65 | Pass |
| Greenhouse | 68.75 | 55 | Pass |
| Lever | 68.70 | 50 | Pass |
The spread here is 5.30 points from highest to lowest. All pass in this example, but tweak the keyword score down to 45 and Taleo (weight 0.35) drops 7 points while Lever (weight 0.22) only drops 4.4. That differential is the whole point: your optimization strategy should depend on where you’re applying.
AI vs Rule-Based Scoring
Section titled “AI vs Rule-Based Scoring”Everything above describes the rule-based fallback engine. When AI scoring is available (Gemma 3 27B via Google’s Generative Language API), the LLM evaluates each dimension using the same platform profiles as context. The AI can pick up on nuances that rule-based scoring can’t, things like contextual relevance, phrasing quality, and role-specific terminology.
The rule-based engine exists as a fallback for when the AI is unavailable (rate limits, timeouts, etc.). It produces serviceable scores using the exact formulas on this page, but AI scoring is generally more nuanced and accurate for real-world resume evaluation.