CMS Score
TOOLS · EXPERTINI ATS

CMS Score

Semantic candidate–job match scoring: Gemini reads for evidence, a published deterministic formula computes the score — never a black-box guess.

3 min read · Updated July 2026 · Expertini Editorial
CANDIDATE MATCH SCORE
Σ(CSS×JRIS)
÷ Σ(JRIS)
DETERMINISTIC · 100%
0–100score range, no separate normalisation
5–9dimensions derived per job
0AI-generated numbers — extraction only
100%reproducible, same inputs every time
THE PUBLISHED FORMULA — PROPRIETARY TO EXPERTINI
CMS = Σ(CSSᵢ × JRISᵢ)Σ(JRISᵢ)
CSSCandidate Skill Score (0–100) — how strongly the anonymised CV evidences a dimension.
JRISJob Requirement Importance Score (0–100) — derived from your JD's own must/preferred/plus language.
iEach competency dimension, 5–9 of them, extracted fresh from that specific job description.
Hard blockerA missing "required" dimension pins CSS to 0 — strengths elsewhere can't average it away.

The CMS Score tool runs the full Candidate Match Score pipeline standalone — paste a CV and a job description, get a dimension-level, evidence-cited score back, without needing a full application already sitting in your pipeline.

It exists for the moment before a formal process starts: a recruiter sanity-checking a referral, a hiring manager curious whether a candidate they met at a conference actually fits an open req, or a candidate wanting to see how their own CV reads against a real posting. The same scoring engine that runs automatically on every application in Expertini ATS is available here as a direct, one-off lookup.

Watch the 30-second overview — no sign-up needed

01What it does

Gemini reads a PII-stripped CV and identifies evidence for 5-9 competency dimensions derived from your specific job description — or fixed in advance by your team with Manual/Hybrid CMS —, then a deterministic formula (CMS = Σ(CSS×JRIS)/Σ(JRIS)) computes the score from that evidence — the AI never outputs the number itself, and can't smuggle a ranking or recommendation into its output because the schema it's constrained to produce has no field for one.

02Who it's for

Recruiters and hiring managers who want a fast, defensible fit-check without waiting for a full application to land — solo recruiters vetting a referral, in-house teams triaging inbound interest, and agencies pre-qualifying a candidate before presenting them to a client all use it the same way: paste, score, read the rationale.

03What makes this different

Most AI screening tools ask a language model to output a score directly, which produces a fluent-sounding number that can vary between identical runs. CMS separates the two steps: the model only extracts evidence against a fixed schema, and ordinary code — not the model — does the arithmetic. Identical inputs produce an identical score every time, and every dimension carries a citation back to the actual CV text a recruiter can check by hand.

04Why it matters

A score nobody can explain is a score nobody should trust with a real hiring decision. Dimension-level rationale turns "the AI said 74" into a specific, checkable claim about what evidence was found and how it was weighted — useful for a quick one-off fit-check here, and the same reason it's the scoring engine every application in your pipeline runs through automatically once you're using the full ATS.

05Pricing and what's included

CMS Score is available from the free 14-day Trial plan onward, no card required — Starter includes 25 scores a month, Growth 250, Professional 1,000, Business 5,000, and Enterprise 15,000, comfortably covering a standalone lookup habit on top of whatever your live pipeline is already scoring automatically.

06Support

The Help Center and Support Center document the CMS formula and its inputs in full, available any time you want to check how a specific score was reached; for anything the docs don't answer, support@expertini.com reaches the team directly.

Engineering notes

Platform architecture & operations

A1Architecture: where it sits in the platform

CMS Score is a first-class module of the Screening & Evaluation suite inside the authenticated Expertini ATS workspace. The platform is deliberately server-rendered: every view is prepared by the application server and shipped as complete HTML, with no client-side framework, no third-party CDN scripts, and no build pipeline between the data and the page. What renders is what the server computed — the property that makes the interface auditable.

All persistence runs on a single search-native document store; every query carries the organisation's identifier as a mandatory filter at the lowest query layer. Tenant isolation is therefore structural — a property of how every request is composed — rather than a policy that relies on application code remembering to check.

Availability is governed by the platform's tool registry: this tool is registered from the Trial plan, and access is enforced server-side by the registry gate on every request — never by hiding a button. Plans also carry a monthly distinct-tool quota (3 / 5 / 15 / 30 / 45 across Trial→Business, unlimited on Enterprise), counted at the same chokepoint. The pricing page states both honestly: what is available, and how much of it the month includes.

A2Data model and dependency map

In production the tool reads and writes job requisitions (ats_jobs), the candidate database (ats_candidates). Documents are plain, explicitly-mapped fields — mappings are provisioned ahead of first write, so term filters and aggregations behave deterministically instead of depending on inferred types.

Every distinct open is journalled to the tool-activity store — and that journal, not a parallel analytics system, is what the Reports section aggregates. The usage numbers you see are the numbers the platform actually recorded.

Anything that leaves the request path — notification fan-out, webhook delivery, activity journalling, mail — runs in fire-and-forget background threads. A slow external endpoint can never make the interface hang, and a failed side effect is logged rather than silently retried into inconsistency.

A3Operational considerations

Organisation-level settings, destructive actions, and connections are gated to owner and admin roles; recruiters operate the tool on the records they can see. Role changes apply on the next request — enforcement is at the route, not in the menu.

Scoring in the screening suite is deterministic and published: the same inputs produce the same outputs every time, hard requirements act as blockers rather than being averaged away, and no generative model invents a number — AI is used for extraction and drafting, humans decide. The methodology is public on the research page, where legal and data-science teams can interrogate it before buying.

Everything written is yours to take: CSV exports and the Data Export app cover the same stores the product itself reads. The exit is as open as the entrance — by design, not concession.

A4Interaction contract

The interface follows the platform's search-and-select convention: any field that names a real record — a candidate, client, or job — is a type-to-search picker over live data, never a free-typed string, which is what keeps activity trails and deduplication trustworthy. Static choices are filter-as-you-type combos rather than native dropdowns, and state transitions give explicit feedback: server confirmations surface as toasts, validation errors name the exact field, and nothing is shown as done that the server has not confirmed.

The wireframe and flow below document the structural contract of the surface — what panels exist, what order the states occur in, and what happens at every edge — rather than pixels. The layout is composed with native CSS grid and flexbox and adapts from wide desktop to a single column without separate mobile views.

Dependency map

Reads / writesats_jobs, ats_candidates
Access gateTrial plan and above — enforced server-side by the tool registry
Monthly quotadistinct tools per month: Trial 3 / Starter 5 / Growth 15 … unlimited on Enterprise
Usage journalats_tool_activity (per open)
Tenancyevery query filtered by organisation id at the query layer
Side effectsbackground threads — never on the request path

Interface blueprint

Structural schematic of the surface — panels, hierarchy, and interaction affordances. A contract, not a screenshot.
Input panel
type-to-search record picker
run — server-side
Result panel
copyexportjournalled
Fig. 1 — CMS Score: structural interface schematic. Panels and states are the contract; data shown is placeholder.

Interaction flow — states, validations, feedback

Every state below is enforced server-side; the interface reports it, it doesn't decide it.
Open toolregistry gate: plan + monthly quota
Pick recordstype-to-search over live org data
Server computeorg-scoped reads; deterministic logic
Resultrendered server-side; export on demand
Journalactivity store → Reports
Plan below minimum → lock page shows the exact tier ladder, never a dead endMonthly quota reached → upgrade prompt with the count that triggered itValidation failure → the specific field and reason, inlineEmpty search → honest empty state; no fabricated matches
Fig. 2 — interaction flow: navy = states, gold = server-enforced gates, green = confirmed outcomes; tags list the edge cases and their feedback.

Frequently asked questions

Is the CMS score generated directly by AI?
No — Gemini only extracts evidence into a fixed schema; the score itself is computed by deterministic code outside the model, which is why identical inputs always produce an identical result.
Can I run a CMS score without a full job application?
Yes — this standalone tool runs the same pipeline on a pasted CV and job description, no application record required.
What does a CMS score actually mean?
A 0-100 figure built from 5-9 job-specific competency dimensions, each with an evidence citation from the CV — the full breakdown and rationale are shown alongside the number, not just the score on its own.
Does a missing required skill sink the whole score?
Yes — a missing dimension marked as a hard requirement pins that dimension's score to 0, and strong performance elsewhere can't average it away.

At a glance

  • Available from the free 14-day Trial plan upward, no card required
  • Deterministic — same inputs, same score, every time
  • Dimension-level rationale, not just a bare number
  • Included: 25 to 15,000 CMS scores per month, scaling by plan tier
  • Same engine that scores every live application automatically once you're on the full ATS
  • PII stripped from the CV before Gemini ever reads it

See cms score on your own hiring.

Bring a real job description to a 30-minute demo — free trial included.

Book a demo
Expertini AI
Online now
Hi! I'm Expertini's AI Product Expert. Ask me anything about our solutions, get guidance on any of our Hiring Tools, or just tell me what you're trying to do — I'll point you in the right direction. For account-specific issues, email support@expertini.com.