THE ENGINEERING LEDGER

R&D numbers your auditor can walk backwards.

Worklogs, commits and pull requests become a classified, reconciled monthly R&D ledger: closed, locked and backed by evidence your auditor can trace.

May 2026 · closed and locked
$96,400
capitalisable · rule-backed
classified
effort capitalisable, $14,200 expensed, an 87.2% cap rate, closed with the evidence preserved. Period locked

Every figure walks backwards to the worklog, commit or pull request behind it. Nothing here is a typed-in adjustment.

SOURCED FROM
WorklogsCommitsPull requestsJiraGitHubBitbucket
Without EngLedger

Today the R&D number is rebuilt by hand,
months after the work happened.

01
Finance exports Jira
Tickets come out of Jira into a spreadsheet, stripped of the context that made them capitalisable or not.
02
Engineering explains the work
Someone senior is pulled off delivery to reconstruct what each ticket actually was, from memory.
03
The spreadsheet gets rebuilt
The capitalisable-versus-expensed split is assembled by hand, the same way, every quarter.
04
Evidence arrives late
The paper trail is stitched together months after the decisions it is meant to support. If the auditor asks, it is a scramble.
Software capitalisation, from source data

The spreadsheet finance builds every quarter,
built from the work itself.

🏷️
Classification you can defend
Ordered rules over tickets and commits decide capitalisable or expensed. Every decision carries the rule that made it, the history of changes, and a review queue for the results the rules were least sure about.
📒
Monthly rows that reconcile
Hours, total cost, capitalised, expensed, cap rate and cost per hour, per month. Each row carries a control check: CapEx plus OpEx must equal total, or the row says so instead of shipping.
🔒
A close, not a snapshot
Period close scores readiness, ranks what blocks it with the fix for each, then locks the period. The evidence bundle is preserved at close time, so the number finance filed is the number you can reproduce.
🎯
Confidence made visible
The ledger separates cost that arrived through explicit rules from cost that fell through to defaults. Grey-zone spend goes to review before close, and the split itself exports as audit evidence.
🔍
Evidence reconciliation
Commits with no logged time, hours with no code behind them. Both directions of the paper trail are checked, and the gaps queue for cleanup before finance relies on the period.
📈
Initiatives with budgets
Strategic bets carry live burn rate, projected total and budget consumption, with delivery-risk flags when spend runs ahead of completion. Tickets join by rule, so membership keeps itself current.
Control-checked by construction

Every month answers one question:
does it balance?

The R&D ledger is a table finance already understands: one row per month, capitalised and expensed split out, cap rate and cost per hour alongside. The control check on each row confirms CapEx plus OpEx reconciles to the total before anything is exported.

AI tooling cost lands in the same ledger, under the same period controls. Attribution and governance are covered on the AI governance page. Plans and what each includes are on the pricing page, and the full monthly close workflow is documented in the R&D capitalisation guide.

R&D capitalisation ledgerBalanced
PeriodCostCapExOpExRateCheck
2026-04$18,400$0$18,4000.0%Balanced
2026-05$110,600$96,400$14,20087.2%Balanced
Total$129,000$96,400$32,60074.7%Balanced
// Readout
$96,400 capitalised into the R&D ledger.
Every month reconciles before export.
Period close

The month ends when the evidence says so,
not when the calendar does.

01
Readiness score
One number for how close the period is to closing, computed from the open issues that would make an auditor pause.
02
Ranked blockers
What stands between you and a clean close, ordered by impact, each with the specific fix rather than a generic warning.
03
Lock
A closed period stops moving. Late worklogs and reclassifications land in the next open period, and the lock is auditable.
04
Evidence snapshot
The audit bundle is preserved at close time: rows, classifications and rule versions as they stood when finance took the number.
Period closeReadiness
Control checkspassing
Review queueclearing
Evidence gapsqueued
Period lockready
// At close
Rows, classifications and rule versions
snapshot into the audit bundle.
Know what needs review before close

How the number was made
is part of the number.

Two checks guard the ledger before close. The first shows which classifications need review (how much cost arrived through explicit rules versus fallback defaults) and routes the grey zone to a reviewer. The second finds missing or contradictory evidence: work with no logged time, hours with no code behind them, and a cleanup queue that trends the match rate over time.

Both export. When the auditor asks how much of the capitalised figure rests on defaults, the answer is a report, not a meeting.

Classification coverage1,609 commits
Ticket-matched62.7%
Rule-classified16.7%
Fallback18.8%
// Data quality
85% of activity matched. 251 gaps
queued for review, with export.
Get started today

Close next month from a ledger, not a spreadsheet.

Connect Jira and your repos in the morning and read your first reconciled ledger the same day.

14-day trial. No credit card. Setup in minutes, not weeks.