The effort model
How worklogs and commit activity become effort entries, what the daily rollups are, and what the numbers do and don't tell you.
Updated 12 July 2026
Every report in EngLedger is built on one table: the effort ledger. An effort entry records that a person spent a number of hours on a piece of work on a particular day, what it cost, and how it was classified. This page explains where those entries come from, and, just as importantly, what they can and can't claim.
Two sources of effort
Your organisation chooses one effort method in Settings, and reports are built from that method's entries only. The two are never mixed or double-counted:
| Effort method | Entry source | Hours are |
|---|---|---|
| Worklogs | Time logged in Jira | Actual logged time |
| Commit sessions | Commit activity from GitHub/Bitbucket | An estimate derived from commit timing |
Worklogs suit teams with a time-logging discipline: each Jira worklog becomes exactly one effort entry, with hours equal to the logged time and the work dated by when it was logged (in your organisation's timezone).
Commit sessions suit teams that don't log time. EngLedger groups a person's commits into working sessions: commits closer together than 45 minutes belong to one session, and a session's duration runs from its first commit to its last (with a 30-minute minimum, so a single commit counts as half an hour). Session hours are split across the tickets the commits reference, in proportion to commit counts. Merge commits and commits off the repository's default branch are excluded. The gap and minimum are configurable per organisation.
Worklog versus effort entry
These are different records and it pays to keep them straight. A worklog is the raw Jira data, who logged how many seconds against which issue, untouched. An effort entry is the accounting record EngLedger derives from it: hours, the person's hourly rate on that date, your organisation's overhead multiplier, the calculated cost, and the work's classification. The raw worklog never changes; the derived entry is what reports consume.
Cost and classification
Each entry snapshots the inputs to its cost at the time of the work:
cost = hours × hourly rate (on the work date) × overhead multiplier
Rates come from each person's dated rate history, so a raise applies from its effective date without rewriting past months. Entries for work with no linked person or no rate carry hours but no cost: the ledger shows honestly that the hours exist and the cost is unknown, rather than guessing.
Classification (capitalisable or not, and the type of work) comes from the linked ticket via your classification rules. Work with no ticket falls back to your organisation's default classification, and the entry records that it was classified by fallback, which is what the Confidence Report surfaces as lower-confidence effort.
Daily aggregates
Effort entries roll up into per-day aggregates: one row per person, project, repository, ticket and classification combination per day. Reports read these rollups rather than the raw entries. Rollups refresh whenever effort is generated, and a nightly reconciliation compares the rollups against the underlying entries and repairs any date that drifts, so the numbers you see agree with the ledger underneath.
What the numbers mean
The honest summary:
- Worklog effort is what people said they spent. It inherits whatever care your team puts into logging time.
- Commit-session effort is a consistent estimate of coding activity. It understates non-coding work by design.
- Cost is rate × hours × overhead, a modelled figure, not payroll.
- Effort with no person or rate appears as hours without cost rather than being silently dropped from the hours totals.
EngLedger surfaces gaps (unlinked identities, missing rates, fallback classification) instead of papering over them, because reports about people should show their own limitations. See people and identities for the attribution side, and the R&D capitalisation guide for how classified effort becomes a monthly ledger. The product overview is on the ledger page. Choosing one effort method and holding to it is covered in the best practices guide.