Core Concepts & Data Flow
Five objects, one pipeline. Once you can name a Template, a Cycle, an Assignment, a Score and a Recommendation — and see how data flows through them — every screen in the module makes sense.
The five objects you work with
The module stores everything in nine tables, but you only ever think in five nouns:
A reusable scorecard: which of the 29 metrics count, and how much each category and each metric is weighted. Built once, reused by many cycles. Ships with 5 role-based weight profiles.
A period being evaluated (e.g. “Q1 2026”), with a cadence (monthly/quarterly/…), a start and end date, and a chosen template. It has a lifecycle from Draft to Finalized.
One employee inside one cycle, scored against one template, optionally with a named reviewer. This is the atom the engine calculates and the thing you drill into.
The outputs: a metric score per metric, a category score per category, and one composite score + rating band per assignment. History is snapshotted each cycle for trends.
An advisory step change derived from the composite rating, priced against the employee's salary grade, awaiting a manager's Approve or Reject.
A value a reviewer types in for a metric the system can't measure automatically (e.g. Ticket Satisfaction). Normalized onto the same 1–5 scale as everything else.
How they relate
Template ──chosen by──▶ Review Cycle ──contains──▶ Assignment (employee × cycle)
│ │
│ defines weighted metrics │ the engine computes:
▼ ▼
29 metrics in 8 categories ─────────────────▶ Metric Scores ─▶ Category Scores ─▶ Composite Score + Rating
▲ │
Manual Entries ────────┘ ▼
Salary Recommendation (advisory)
│ approve
▼
draft Salary History recordRead it as a sentence: a template defines a weighted set of metrics; a cycle applies that template to a period; each employee in the cycle is an assignment; the engine scores each metric, rolls them into category and composite scores, and the composite's rating proposes a salary step.
The data flow, stage by stage
Collect
For the assignment's employee and the cycle's date window, the engine reads the source tables (attendance, tasks, tickets, timesheets, discipline, leave, certifications, …). Nothing is re-entered.
Compute a raw value
Each metric has a formula that produces a single raw value in its own natural unit — a percentage, a count, hours, or a 1–5 score. If the inputs are missing (e.g. no tickets to resolve), the raw value is null, not zero.
Normalize to 1.00–5.00
The raw value is converted onto the common 1.00–5.00 scale using the metric's five threshold bands and its direction (higher-is-better, lower-is-better, or a healthy middle band). This is what makes an attendance % and a ticket-resolution-hours figure comparable. Details on Scoring.
Weight & roll up
Metric scores are blended into a category score by their metric weights, then category scores into a single composite score by category weights — skipping any null metric and redistributing its weight. The composite maps to a rating band.
Publish
Results persist to the score tables, a snapshot is written to history (for the trend line), and — if enabled — a salary recommendation is generated. The Overview, Team Matrix, detail modal, profile tab and APIs all read from here.
Why a 1.00–5.00 scale?
Every metric, category and composite uses the same continuous 1.00–5.00 band, stored to two decimals. A 5-band scale is the performance-review industry standard: it is granular enough to distinguish performers, coarse enough to stay fair, and it maps cleanly onto five plain-language ratings and five salary outcomes.
The design behind the metrics
The metric set isn't arbitrary — it follows established performance-management practice so a score can't be gamed by over-doing one behaviour.
Four performance dimensions
Every category mixes these so no single behaviour dominates the score:
Leading vs. lagging indicators
Each metric is tagged as one or the other, so a reviewer can act on early-warning signals before the results deteriorate:
Measures a result that already happened — attendance rate, task completion, resolution time. Reliable, but you can only react.
Predicts future performance — certifications, training, and leave/overtime health as burnout signals. Act on these to change the lagging results.
What's in and out of scope
Automatic scoring from existing data · configurable templates & weights · review cycles · employee / team / org dashboards · advisory salary-step recommendations · historical trending · audit trail.
360° / peer feedback · customer-satisfaction & revenue KPIs · OKR / goal management · AI-predicted performance · external benchmark data. A few metrics are manual today precisely because their source signal doesn't exist yet.