SuccessFactors licensing pivots on a single number: the headcount the customer reports to SAP at the start of the contract year. That number drives the subscription fee, the true-up exposure, and every renewal conversation that follows. Dormant employee records — people who have left, contractors whose engagements have closed, training accounts that were never decommissioned — sit inside the reported headcount and pay the per-employee rate exactly the same as live, productive workers.
The financial drag is significant on its own. The audit and true-up risk is larger, because SuccessFactors true-ups are calculated against a year-end headcount and a dormant population that has been left to grow during the year converts directly into incremental subscription cost at renewal. This article sets out how to handle dormant employee records in SuccessFactors cleanly — what counts, what does not, and how to keep the headcount honest.
What SuccessFactors actually counts
The standard SuccessFactors subscription is priced per employee, with the employee population typically defined as the count of active employee records in Employee Central (or, for customers without EC, in the seeded employee table that feeds Performance & Goals, Compensation, or Learning). The contract usually allows the customer to exclude certain populations — some contracts exempt contingent workers, retirees with continued benefits access, and inactive records held for regulatory or rehire-rights reasons. The exclusions are contract-specific and need to be confirmed from the customer's own paperwork, not from SAP's marketing materials.
The decisive question is always the same: what is the population that SAP can audit against, and what is the population the customer is paying for? The two should be identical. When they diverge — usually because the customer is paying for an inflated count it does not need to — the over-payment is real money and recoverable at renewal. When they diverge in the other direction — the customer is paying for fewer records than the system actually shows active — the underpayment is a true-up exposure that becomes a finding at the next measurement.
The five categories of dormant SuccessFactors record
1. Terminated employees with active records
The largest single category. HR processes a termination, the EC workflow runs, but the record retains an active status because the termination effective date is in the future, because a benefits eligibility window is still open, or because the termination workflow was completed with errors. We routinely see five to twelve per cent of an EC active population in this state.
2. Contractors and contingent workers
Contract definitions vary widely on whether contingent workers count. Some SAP contracts include all individuals with a SuccessFactors logon. Others restrict the count to permanent employee records. The customer's classification choice for contingent workers can move the payable headcount by ten to twenty per cent. See our analysis of SuccessFactors contractor counts for the contract-language analysis.
3. Training and demo accounts
Accounts created during implementation, training cycles, or vendor demos that were never deactivated. Naming conventions often give them away, but they sit in the active count exactly the same as live records.
4. Long-term leave records
Employees on extended leave — parental, medical, sabbatical — whose records remain active during the leave period. The licensing treatment varies; some contracts allow these records to be flagged as non-billable during the leave window. Most do not, by default, and the customer pays the per-employee fee throughout.
5. Rehire-rights and regulatory-retention records
Records held active for legal reasons — rehire eligibility windows, regulatory retention obligations, pending discrimination claims. These records typically need to remain in EC but should not necessarily count toward the billable headcount, depending on the contract.
Where the audit risk concentrates
SAP's enforcement of SuccessFactors headcount is principally through the annual true-up, not through a separate audit cycle. The mechanics are: the customer reports the year-end headcount, SAP compares against the contracted baseline, and the variance prices into the renewal year. Customers who do not maintain the headcount cleanly typically discover the inflation in the true-up letter.
A secondary enforcement path is the periodic licensing audit that SAP runs across the broader account — ECC, S/4HANA, BW, SuccessFactors. The auditor will request the EC active-employee export and reconcile it against the contracted population. Customers with dormant records have no defence here other than to negotiate a remediation timeline and unit-price discount, and the leverage is much weaker than it would be in a normal renewal cycle. See our broader SuccessFactors topic page for the full audit picture.
The cleanup workflow
Step 1 — Define the billable population
The starting point is the customer's own contract, not the standard SAP definition. The contract will specify which employee statuses count, which exclusions apply, and how contingent workers are treated. The definition needs to be written out and approved internally before any cleanup begins.
Step 2 — Pull the EC active-employee export
The export should include employee status, employment type, effective dates, and the contingent-worker flag. Reconcile against the HR active-employee feed, the contractor master, and the leave-management system.
Step 3 — Reclassify, deactivate, or document each variance
Each record outside the contracted billable definition needs an action — reclassified to a non-billable status, deactivated entirely, or documented as a justified exception. The documentation is the defence against any subsequent challenge.
Step 4 — Confirm the system-side billable count
SuccessFactors reports a billable headcount through an administrative report; the customer should run this after the cleanup and confirm the count matches the documented billable population. Any variance is a system-configuration issue that needs to be resolved before the next true-up.
Where dormancy interacts with the broader SuccessFactors true-up
The SuccessFactors true-up mechanism is complex and varies by contract vintage. Most contracts include a year-end true-up at a defined unit price; some include a partial true-down right that allows the customer to reduce the baseline at renewal. The interaction between the dormancy cleanup and the true-up math is direct: a cleaned-up headcount at year-end resets the baseline lower, which in turn reduces the renewal pricing.
For customers approaching a renewal, the cleanup should be completed at least sixty days before the year-end measurement. This gives the customer time to handle any escalations — line-manager pushback on contractor deactivation, legal reviews of retention-policy records, leave-management coordination — without sliding into the measurement window. See the detailed analysis in our SuccessFactors true-up triggers article.
The HXM bundle question
Customers on the broader HXM suite — Employee Central, Performance & Goals, Compensation, Learning, Recruiting, Onboarding — need to handle the dormancy question across all modules. A dormant record in EC frequently has corresponding dormant entries in the other modules, each of which may carry its own headcount-based licensing.
The cleanup needs to address the consolidated identity, not just the EC record. Otherwise the customer can deactivate an employee in EC but continue to pay for them in Learning, Recruiting, and Compensation. See the HXM bundle architecture analysis in our HXM suite tier comparison article, and the contract-side analysis in EC vs PM/GM bundles.
Three questions to ask before the next true-up
First: what is the contracted billable population definition, and does it match what the system is reporting? If there is variance, the variance is the cleanup opportunity.
Second: does the contract include a true-down right at renewal, and on what terms? Customers without a true-down right can only adjust the baseline upward; cleanup is the only path to a lower position.
Third: what is the unit price for the year-end true-up, and how does it compare to the original per-employee subscription rate? The true-up unit price is often higher than the original rate; cleaning the dormant pool before measurement avoids paying the higher rate.
For the broader contract-restructuring context, see our SAP contract negotiation service and the case-study example of a financial-services SuccessFactors true-up defence that reduced a $3.1M year-end finding to $740k. The deeper white-paper treatment is in the SAP cloud licensing economics paper.