What it measures
The EOR Index answers one question: in the last calendar month, how did customers write about each tracked employer-of-record (EOR) provider? It does not measure market share, payroll volume, country coverage or product completeness, and it does not use star ratings as the score.
Sources
Scores use public reviews from G2, Capterra and Trustpilot. Field Sentiment uses practitioner channels, including off-market communities that public review sites cannot see. New sources are added as they are onboarded and are listed here with their start month. Competitor comparison sites, listicles, news articles and vendor marketing pages are not inputs. Review text is not republished.
| Source | Used for | Access | Since | What it is |
|---|---|---|---|---|
| G2 | Review score | public | 2026-06 | Public B2B software reviews |
| Capterra | Review score | public | 2026-06 | Public B2B software reviews |
| Trustpilot | Review score | public | 2026-06 | Public customer reviews |
| Field Sentiment | public | 2026-06 | Posts and comments by practitioners naming EOR providers | |
| Slack communities | Field Sentiment | off-market | 2026-06 | Slack communities of People Ops and global employment operators |
| closed WhatsApp groups | Field Sentiment | off-market | 2026-06 | Closed WhatsApp groups of People Ops and global employment operators |
| Reddit threads | Field Sentiment | public | 2026-06 | Reddit threads in which employers and workers discuss EOR providers |
Platform total review counts (for example, all-time G2 reviews) are shown as context only. They are never inputs to the score.
Window and cadence
Each snapshot covers one calendar month in UTC and is frozen on the 1st of the following month. Reviews are selected by their own publication date, not the date they were collected. The series starts in June 2026.
Formula
Each in-window review is scored for sentiment from −1.0 to 1.0 from its text. The provider score is:
score = round((mean(sentiment) + 1) × 2.5, 1)
This maps −1..1 onto 0..5, reported to one decimal place. The 90-day score applies the same formula to the trailing 90 days. The category index is the unweighted mean of scored providers. It is not volume-weighted, so the largest review footprints cannot set the category number. Δ 30d is this month’s published score minus last month’s. Providers with the same score are ordered by number of reviews.
States
scored: at least one in-window review.insufficient_data: no in-window reviews. Shown as “—”, never as 0.not_tracked: the provider was acquired or is defunct. Earlier figures stay published.
Every score is published with its sample size n.
Themes
Up to three themes are attached to each review, from a closed list (schema v1). Adding a theme requires a version bump. History is never silently remapped.
| Theme | Means |
|---|---|
| payroll accuracy | payroll errors, wrong amounts, missed deductions |
| payroll timeliness | late payment, delayed filings |
| support responsiveness | time to first response, chasing |
| support quality | competence of the answer once received |
| onboarding speed | time from signature to first payroll |
| offboarding and exit | termination handling, final pay, leaving the provider |
| compliance confidence | contracts, classification, local law, audit |
| pricing transparency | unexpected fees, FX, unclear invoices |
| platform usability | the software itself |
| account management | named contact, continuity, relationship |
The EOR Index Field Sentiment
Field Sentiment is original research and a named dataset. It reads practitioner language about EOR providers in 4 channels:
- LinkedIn: Posts and comments by practitioners naming EOR providers
- Slack communities (off-market): Slack communities of People Ops and global employment operators
- closed WhatsApp groups (off-market): Closed WhatsApp groups of People Ops and global employment operators
- Reddit threads: Reddit threads in which employers and workers discuss EOR providers
The unit is an observation, not a star. Each observation gets exactly one dominant sentiment from the closed list below. Shares are counts over the calendar month. Month-to-month change is reported in percentage points of share. It is never converted to a 0–5 score or split into positive vs negative; the named sentiment is the product. Field Sentiment is not derived from G2, Capterra or Trustpilot.
| Sentiment | Direction |
|---|---|
| Trust | positive |
| Expertise | positive |
| Frustration | negative |
| Anger | negative |
| Mid | neutral |
Sentiment schema v2: trust, expertise, FX transparency, frustration, anger and mid (neutral or mixed). Direction is used only to colour month-to-month moves, never to score. Adding or renaming a category bumps the schema version.
FX-rate transparency
Each month we run two checks on how each provider handles FX on cross-currency payroll, taxes and total employment cost (TEC):
- Is the FX rate public? Yes if the provider publicly publishes the rate (or rate source) it applies. Linked to the page where it was found.
- Is the FX markup zero? Yes if the provider applies no markup over the mid-market rate. Where a markup is known, it is shown as a percentage.
Where a provider does not publish its rate, The EOR Index estimates the markup over the mid-market rate, based on reports from users and operators in closed WhatsApp groups, Slack communities and Reddit threads. Estimates are always labelled “est.” on the site and marked estimated in the data files. Published figures are marked published.
Estimates may not be accurate. We treat them as provisional. Providers and their customers can correct an estimate by sending invoices that show the FX rate applied alongside the spot (mid-market) rate on the same date. Where the evidence shows a different markup, we update the next snapshot and log a correction.
Both are shown beside the score and are not part of it. A blank means the provider was not checked that month.
Overrides and corrections
Editors may override a provider’s published 0–5 score for one period. The model score is kept and shown beside the published figure, with the reason. Frozen pages are not rewritten. A later error is logged as a dated correction at the foot of the affected snapshot. Field Sentiment observations are never overridden onto the 0–5 index.
Publishing and data
Each month’s figures come from one source workbook. Adding a new data source is a new row in that workbook, so the source list above is always complete. That month’s rows are published unchanged at /data/YYYY-MM.csv, beside a JSON file containing every derived figure and generated sentence. Rank, monthly change, the category index and all sentences are calculated from the sheet at publication, so the page, the JSON and the structured data always agree.
Machine-readable: all.json · llms.txt · llms-full.txt · Atom feed.
What this is not
The EOR Index is an editorial measurement. It ranks providers on what buyers reported in the window; it is not legal, tax or procurement advice, and it is not a star rating. Placement cannot be bought. Questions about the method belong on this page.
Frequently asked questions
Which sources are used?
Public reviews from G2, Capterra and Trustpilot, plus Field Sentiment observations from practitioner channels listed on the methodology page. New sources are added as they are onboarded and listed with their start month. Competitor comparison sites, listicles, news articles and vendor marketing pages are not inputs.
Why is the category index unweighted?
Volume-weighting would let the two largest review footprints set the category number, so each scored provider counts equally.
What happens when a provider has no reviews in a month?
It is shown as “insufficient data” and rendered as “—”, never as 0. Acquired or defunct providers are marked “not tracked”.
Can editors change a score?
Editors may override a published score for one period. The model score is kept and shown beside the published figure, with the reason.