Analytics Strategy: Decisions First, Charts as Evidence

One effective-dated model of enrollment, payroll, carrier and compliance records. One Analytics Context that every KPI, chart and question runs against. AI that interprets what the engine computed — and never computes on its own.

Benefits Reimagined treats analytics as part of the record, not a report exported from it: the workspaces that replace legacy SAP benefits reports, the spotlights that rank what needs attention and the explanation behind every number all read the same as-of-dated data. It works the same whether a record arrived from SAP SuccessFactors in real time or from Workday, UKG, ADP or Dayforce through HRIS Sync.

Decision-firstOne Analytics ContextAs-of dated · bitemporalThe LLM interprets · Python calculatesAny HRIS record
AnalyticsBenefits Participation · as of 09/14Decision-first92.3%Eligible enrolled4.8%Coverage gap$812Employer cost / capita / mo1,214Pending · not enrolledWaive rate rising · Plant 2 hourlySpotlight · opt-out +6.1 pts in 3 monthsdecideACA 95% offer thresholdOn track · 97.4% offered · 0 blockerson trackHDHP migration next OEML Engine forecast · +4 pts · confidence bandforecastWhy 4.8%?AI Insight · 71% Plant 2 · 22% in new-hire winexplainedGap by locationAI Query · scoped read · cohorts under 5 hiddeansweredRetro correction posted 08/01Bitemporal · original record retainedauditedOne context · one endpoint · one definition per KPIEvery tile above subscribes to the same Analytics Context; clicking a row re-runs all of them.The orchestrator computes each figure once; the database aggregates at source; AI only explains.Illustrative workspace · your records, your dates, your cohorts

Decision-First Analytics on One Effective-Dated Model

Most benefits analytics starts with a chart and hopes a decision follows. We start with the decision — the waive rate that needs a campaign, the offer threshold that needs a check, the invoice that needs a match — and put the evidence one click behind it. To make that honest, every figure is as-of a date, pending is never counted as enrolled, employee and employer cost are never blended, and a correction never overwrites what was true before. Then AI does one job: it explains what the engine computed.

1Analytics Context per workspace — every KPI card, chart, table and Athena question subscribes to it
3intelligence models kept apart on purpose: AI Query plans, the ML Engine ranks and forecasts, AI Insight explains
2clocks on every record — business time and system time — so a retro correction adds a version and keeps the original
5minimum cohort size (configurable) before any breakdown is shown, applied inside the orchestrator

Working Flow — From a Benefits Question to the First Table

The strategy is only as real as the catalog underneath it. Benefits Reimagined publishes a complete analytics catalog of its data model — every entity, its grain, its keys, its as-of rule, its measures and the module that writes it. This is how an analyst uses it, question by question; the last column is the rule that stops the wrong answer.

#The question · start hereHow the catalog answers itThe rule that stops the wrong answer
1“Who is in which Access Control or program?”
Benefits eligibility record (infotype 0171)
Start from the eligibility record, join the employee master and the Access ControlAs of a date — the eligibility record keeps history, so a report date picks one slice per person
2“How many people have medical right now?”
Health plan elections (0167)
Join the eligibility record, the plan's general data and the dependent coverage rowsOne row per person and plan where the report date sits inside the validity dates; a pending (locked) row is a decision — enrolled or not — made once and applied everywhere
3“Employee vs employer cost?”
Elected cost on the election row
Compare with the configured cost-rule variants for the rate that could applyConfigured and elected are two layers; the cost-variant code on an election is a code, never money
4“401(k) deferral vs what payroll took?”
Savings plan election vs payroll cumulative amount
Join on the plan's wage typeThree layers of money — configured rule, elected amount, payroll actual — reconciled in that order
5“How is open enrollment moving?”
Offers → cart → elections → signed attestation
Each stage is a different table; the drop-off is the gap between themThe cart is a draft; the election rows are the receipt — a cart is never counted as an enrollment
6“Life events this month?”
Adjustment-reason record (0378)
Join the adjustment reasons and the workflow instancesA qualifying life event writes its own record; it is not an enrollment
7“Evidence of insurability overdue?”
Insurance plan elections
EOI required, provided and group flags, joined to the EOI submissionsOverdue is a date comparison on the election, not a status guess
8“Ticket queue and conversion?”
Service tickets
Join cases, priorities and SLA configurationTicket, document, note and case statuses are different enumerations — one global “open” bucket is wrong
9“Documents outstanding? Direct-bill receivables? Invoice vs expected?”
Uploaded documents · direct-billing items · vendor invoice facts
Dependents and verification cases; billing cases and payments; ReVerge and Integration Center reconciliationSoft-deleted rows — cancelled tickets, deleted documents, deleted dependents — are always filtered
10“Who was offered a plan but did not take it?”
Benefit program + eligibility + offers, minus elections
The offer output carries the eligibility messagesOffered is configured; taken is elected — the join key is what keeps the two honest

One Question, Five Layers

Follow “what is driving our coverage gap?” from the record it is computed on to the explanation Athena gives — and see why the same question gets the same answer for an SAP entity and a Workday entity.

One effective-dated model is the strategy.

Enrollment, eligibility, deductions, carrier confirmations, invoices, compliance facts and communications live in one schema on SAP HANA or PostgreSQL, keyed by business time and system time. That is what makes a benefits number defensible: an eligible-enrolled rate is computed as of a date, a pending election is its own state, a cost-rule variant is never mistaken for money, and a cart is a draft until the record is the receipt. Analytics reads the tables the modules write — no nightly extract, no second copy.

What the model guarantees

  • As-of dating on every point-in-time figure
  • Pending is its own state — never counted as enrolled
  • Employee and employer cost kept apart, never blended into one figure
  • A retro correction adds a version; the original record stays
  • Small-cohort suppression before any breakdown leaves the engine

Why it matters

A figure you can date, source and reproduce is a figure you can put in front of an auditor or a CFO.

Elasticsearch and Kibana index the same records for operational dashboards, search and audit — the model is one; the surfaces are many.

MODEL · ONE SCHEMA, TWO CLOCKS1Employee & organizationFrom SAP SuccessFactors in real time, or any HRIS through HRIS Sync2Elections & enrollmentThe cart is a draft; the dated records are the receipt3Payroll deductions & wagesEmployee and employer sides stored apart4Carrier confirmations & invoicesProvenance per field; the invoice as census where readback is impossible5Compliance facts & communicationsACA employee-months, notices sent, campaigns deliveredBitemporal by defaultBusiness time says when a fact was true; system time says when BR learned it. A correctionposted in August for a July change keeps both — so the July report still reproduces.Illustrative schema · one model, read by every workspace

Rules of the Model — What the Catalog Enforces

Eight design rules, written into the catalog and followed by every analytics surface on the platform — the workspaces, Essential Insights, Athena's allow-listed reads and Ad-Hoc Reporting alike.

RuleHow it worksWhy it is there
Every people metric starts on the spineEmployee master + the benefits eligibility record, as of the report date on both — then the Access Control and program groupings, then whether the plan was even offeredTwo reports that start on the spine agree; two that do not, will not
As-of dating, alwaysMost HR and benefit tables keep history; a person can have three rows for one plan in a year. Point-in-time means one row per person and plan where the report date sits inside the validity dates; activity means rows whose start date falls in the periodCounting without an as-of date inflates enrollment — the number-one analytics bug
Pending is a decision, not an accidentA locked row means pending, often awaiting evidence of insurability; whether pending counts as enrolled is decided once, per metric, and applied everywhereThe tile, the export and the Athena answer cannot disagree about pending
Configured is not electedConfiguration tables say what could happen; election rows say what did. They join on a key or they do not mixAnalytics that blend the two without a join key lie
Cart is not enrollmentThe cart is a draft; the election rows are the receipt; the signed attestation is the proof. The drop-off is the gap between themThe open-enrollment funnel is real stages, not one status field
Money has three layersThe configured rule, the elected amount and the payroll actual — reconciled in that order by BR ReVerge and the Integration Center; the cost-variant code is never moneyA premium on a chart came from a money field, or it is not on the chart
A person-month bridge for anything monthlyEmployee × calendar × the eligibility record as of month-end; coverage, cost and ACA facts hang off itTwo Access Controls are never mixed in one month
Status enumerations are per moduleTickets, documents, notes and cases each have their own status set; soft deletes — cancelled, deleted flags — are always filtered; similarity vectors are never summed or groupedOne “open” bucket across modules would count the wrong things

Core Capabilities of the BR Analytics Architecture

Built for benefits numbers — as-of rates, pending states, split costs, employee-months — not a generic BI layer pointed at an export.

1

Effective-Dated, Bitemporal Model

One schema for enrollment, payroll, carrier, compliance and communication records on SAP HANA or PostgreSQL, with business time and system time on every row.

As-of datingVersions, not overwrites
2

One Analytics Context & Endpoint

Every KPI, chart, table and Athena question subscribes to one state and one query endpoint; a row click re-runs everything downstream.

Cross-filteringMetadata renderer · Roadmap
3

Analytics Orchestrator

A Python KPI engine, statistics and ML models computing on aggregates the database returns — one definition per metric, shared by every surface.

KPI engineAggregate at source
4

Three Separated Intelligence Models

AI Query plans, the ML Engine ranks and forecasts, AI Insight explains; the one that answers cannot score, and none of them can write.

AI QueryML EngineAI Insight
5

Governance Inside the Engine

Role scoping and small-cohort suppression on every call, every query logged with its context, prompts and models inventoried under NIST AI RMF.

Cohort ≥ 5NIST AI RMF
6

Operational Dashboards & Search

Elasticsearch and Kibana over the same records for operations, compliance and audit, with cross-event reporting across OE, life events, hires and terminations.

ElasticsearchKibana

The Analytics Catalog — Every Table, Its Grain, Its Rule

The strategy is documented at the table level. The catalog is generated from the platform's own schema and cross-checked against the backend code that reads each table, so it says which module writes a table, which read it, and how to date it — for benefits analysts, BI engineers and module developers at once.

880entities in the data model — 860 tables and 20 projections — every one a catalog article: identity, purpose, grain, lifecycle, analytics use, joins, pitfalls, field dictionary, module usage
662entities confirmed in use by backend modules; the remaining 218 are marked schema-only and checked with a row count before any warehouse drops them
28domains, from enrollment and elections through ACA, COBRA, billing, payroll, Communication Hub, workflow, intelligence and compliance
1join spine — employee master plus the benefits eligibility record, as of the report date — that every people dashboard starts on
  • 24Enrollment & elections
  • 25Employee & HR master
  • 25Benefits configuration — foundation
  • 80Benefits configuration — plans
  • 32Flexible administration & programs
  • 3Life events
  • 55ACA
  • 13COBRA
  • 25BR Resolve / ISD
  • 18Documents
  • 12Direct billing
  • 16Carrier billing & GL
  • 41Payroll / BR ReVerge
  • 32Integration Center & reconcile
  • 48Communication Hub
  • 23Workflow & business rules
  • 26Security / RBP
  • 55Intelligence / Athena
  • 10Dependent verification
  • 6QMCSO
  • 33Compliance
  • 8Content & org updates
  • 41Purge / audit / transport / sync
  • 13Ad-hoc / metadata / reports
  • 13User prefs / admin apps
  • 28Benefits configuration — other
  • 44Other / shared
  • 131Schema-only (kept for confirmation)

The analytics surfaces already built on the catalog — and the two that read it directly:

  • Costs & contributionsBR Reports
  • Resolve dashboard tilesBR Resolve
  • Direct billing KPIsBR Direct Billing
  • Employee document analyticsDocument Center
  • Essential Insightsper-module chart actions
  • Athena allow-listed readsa curated set of 28 tables
  • Ad-Hoc Reportingthe published table catalog

Counts are from the September 2026 generation of the catalog; the catalog is regenerated whenever the schema changes, and a screen label never outranks the table name.

Report Exports vs. the BR Analytics Strategy

Most benefits analytics is an export, a pivot and a BI tool bolted on afterwards. Here is what changes when the analytics are part of the record.

MomentExports and BI bolt-onsBenefits Reimagined
“How enrolled are we?”A daily count grid, exported and reconciled by hand.As-of rate computed on the record, with pending shown separately.
Filter by locationEach chart carries its own filter logic; tiles drift apart.One context — every tile re-runs against the same state.
“Why did it move?”Someone builds a pivot and a theory.AI Insight explains the computed figure and names the records behind it.
A retro correction landsLast month's report now disagrees with itself.Bitemporal — the original and the correction both survive.
A cohort of threeShown, and a privacy problem.Suppressed below the configured minimum, inside the engine.
Add a metricA BI ticket and a release.Configuration behind the orchestrator; screens unchanged.
A non-SAP entityA second report pack from a second system.Same workspace, same model, through HRIS Sync.
Athena on every workspace

Ask Any Dashboard What, Where, Why and How

Every BR analytics workspace carries Athena in place, scoped to the context the screen is showing. AI Query plans the read, the orchestrator runs it, AI Insight narrates the result — and Athena hands the next step to the module that owns it.

  • “What is our eligible-enrolled rate as of July 1?” — the as-of figure, with pending shown apart
  • “Where is the coverage gap concentrated?” — a breakdown that honours cohort suppression
  • “Why did the HDHP share rise?” — the AI Insight explanation with its sources
  • “How do I act on it?” — a Communication HUB campaign or a BR Resolve case drafted, never sent
  • “Show me the same for our Workday entity” — the same question, the same model, a different source
See BR Insights explain a number
Athena Benefits Participation · admin
What's driving the 4.8% coverage gap — is it a data problem or a real one?
Athena · from the workspace contextAs of 09/01 the gap is 1,214 eligible employees with no active medical election. 862 (71%) are Plant 2 hourly and have waived in each of the last three months. 267 (22%) joined in the last 60 days and are still inside their new-hire window — not a gap yet. 85 sit in the sync exception queue with a missing hire date from the HRIS, which is a data problem. Cohorts under five are not shown.
Open exception queueShow Plant 2 trend
Draft a campaign for the 862 and flag the 85 to the sync team.
AthenaDrafted, nothing sent: a plan-comparison campaign in Communication HUB targeted at Plant 2 hourly waivers, and a BR Resolve case to the integration team listing the 85 records with their exception codes. Both wait for your approval.
Review campaignOpen case draft
Ask about any metric on this workspace…

Why Benefits and Finance Leaders Choose the BR Analytics Approach

Decisions Before Charts

Workspaces open on what needs deciding; the evidence sits one click behind it.

Numbers You Can Date

Every rate is as-of a date, every correction keeps the original, every cohort is large enough to show.

One Context, No Drift

A KPI on the dashboard equals the KPI in the report, because both came from one definition and one state.

The LLM Never Calculates

AI Query plans, the ML Engine scores, AI Insight explains — and none of them can write to the record.

Governed by Design

Role scoping, cohort suppression, query logs and a NIST AI RMF inventory are inside the engine, not a policy beside it.

Same Answers on Any HRIS

SuccessFactors in real time, every other HRIS through HRIS Sync — one model, one workspace, one set of definitions.

Where the Strategy Shows Up — Workspaces, Spotlights, Explanations

The strategy is not a slide; it is the reason the rest of the Analytics family behaves the way it does. Essential Insights are the governed workspaces built on the model. BR Spotlight is the ML Engine and the rules ranking what needs attention. BR Insights is the AI Insight model explaining a number. Chatbot Analytics reads the interaction log Athena writes. Each is one surface over the same context.

  • Essential Insights — Enrollment Intelligence, Benefits Participation, Demographics and ACA Intelligence, replacing legacy SAP benefits reports for SAP and non-SAP entities alike
  • BR Spotlight — what needs attention today, ranked by the ML Engine and rules, with an owner and an action in the owning module
  • BR Insights — the explanation behind any computed metric, with the records that produced it
  • Chatbot Analytics — what employees ask Athena, what was resolved in chat, and where the content gaps are
  • Operational dashboards — Elasticsearch and Kibana over the same records for operations, compliance and audit
Open the Essential Insights workspaces
AnalyticsStrategy console · Mon 09/14 · adminAsk Athena4Governed workspaces1Analytics Context3Intelligence models0Copies of the dataSurfaceReadsModelStateEnrollment Intelligenceas-of electionsKPI engineliveBenefits Participationeligibility vs electionsKPI + MLliveDemographicscensus · bandsKPI engineliveACA Intelligenceemployee-monthsKPI + MLliveBR Spotlightall workspacesML + rulesrankingBR Insightscomputed metricsAI InsightexplainingChatbot AnalyticsAthena interaction logKPI engineliveMetadata rendererworkspace definitions—roadmapGovernance on this tenantRole scoping on every call · minimum cohort 5Every query logged with the context that produced itPrompts and models inventoried under NIST AI RMFAthena · Is anything computed twice?No. Each KPI has one definitionin the orchestrator; everyworkspace and Spotlight readsit through the same context.SuggestedOne entity still sources agebands from a hard-coded range.Move them to the configured agegroups so Demographics matchesthe other entities.Open Demographics configDrafts the action · a person approves itIllustrative console

Bring One Number You Don't Trust. We'll Show You Where It Comes From.

Pick a figure your team argues about — the enrolled rate, the employer cost per head, the waive rate in one plant. We'll compute it as of a date on your own records, filter it from one context, let Athena explain it and show the log behind the answer.

As-of dated · bitemporalOne Analytics ContextCohort suppressionNIST AI RMF

Analytics Strategy FAQs

Decide First. Then Look at the Chart.

One effective-dated model, one context, three separated models and a person on every commit — for your SAP SuccessFactors workforce and every entity on another HRIS.