Resource Billing Analytics
Route: /org/analytics/resource/billing · Permission: View Resource billing analytics dashboard
To generate a bill: Generate Resource Billings
1. What this screen is
Seven views onto billable effort and what it is worth — and the only place a resource bill is generated.
That second role is the surprising one. This looks like a reporting screen, and it is the screen that writes.
| Billing Analytics | Resource Bills | |
|---|---|---|
| Generates a bill | Yes | No |
| Manages existing bills | No | Yes |
| Adjusts | No | Yes |
| Period | Any range | The bill's own |
2. How generation fits
The screen checks whether the range is already billed, so generation is offered only where it is possible.
3. The seven views
Each is a button on the view switcher, written to ?tab=:
| # | View | Tooltip | Answers |
|---|---|---|---|
| 1 | overview | Overview Matrix | What is billable, broken down |
| 2 | distribution | Distribution Analysis | Where the value sits |
| 3 | trend | Historical Trend Analysis | How it moves over time |
| 4 | budget | Budget Consumption (Bar + Gauge) | How much budget is consumed |
| 5 | sankey | Revenue Leakage Flow (Sankey) | Where value is lost between logged and billed |
| 6 | efficiency | Billing Efficiency Heatmap | Who and what converts effort into revenue |
| 7 | reconciliation | Billing Reconciliation (Effort vs Attendance) | Whether logged effort matches attendance |
The KPI tiles above them include Billable Amount and Billable Hours.
Effort vs Attendance sets time logged against tasks beside attendance data. A person present all week with two days of logs shows here and nowhere else — it is the check that catches under-logging before it reaches a bill.
4. Generating a bill — step by step
Step 1 · Set the date range
The range you are analysing is the billing period. There is no separate period picker in the generate dialog.
Step 2 · Check it is not already billed
The screen tests the range. Where a bill already covers it, the existing bill is shown instead of an offer to generate.
Step 3 · Generate
Confirming creates the bill with an automatic note:
Billing generated for <start> to <end>.
Success: Billing generated successfully. Failure: Failed to generate billing.
This is a state change, not a report. Those logs cannot appear on another bill until this one is cancelled — and cancelling deletes any adjustments made to it.
Get the date range right the first time.
Step 4 · Manage it elsewhere
Everything afterwards — drilldown, adjustments, PDF, cancellation — happens on Resource Bills.
5. Field reference
| Control | Behaviour |
|---|---|
| View switcher | Seven views, written to ?tab= |
| Date range | The analysis period and the billing period |
| Budget head filter | All Budget Heads, then each active head |
| Download Report | Exports the current view |
| Generate | Only when the range is not already billed |
| Full screen | Expands the dashboard |
Where the money comes from
Amounts are billable hours × the rate from the project's billing settings. Hours with no rate contribute nothing to the amount — see Drilldown.
already_billed_amount
The breakdown tracks how much of the range has already been billed, which is what drives the already-billed check.
6. The admin contract
| Prerequisite | Without it |
|---|---|
| View Resource billing analytics dashboard | No access |
| Generate Resource Billings | Analysis only; no generation |
| Billable categories | Nothing billable |
| Project billing rates | Hours with no amounts |
| Budget categories | The budget views and filter are empty |
| Attendance data | Reconciliation cannot compare |
7. Downstream
| Effect | Where |
|---|---|
| A bill | Resource Bills |
| Logs marked billed | They cannot be re-billed |
| The period consumed | Until the bill is cancelled |
8. Don't confuse this with…
| Screen | Purpose |
|---|---|
| Billing Analytics (this page) | Analyse and generate |
| Resource Bills | Manage bills that exist |
| Profitability Control Tower | Margin and P&L, not billing |
| Timesheet Analytics | Hours, billable or not |
9. Troubleshooting
| Symptom | Cause |
|---|---|
| No generate option | The range is already billed, or Generate Resource Billings is missing |
| The bill has fewer hours than expected | Non-billable tasks are excluded |
| Amounts are zero | No rates configured |
| Budget views are empty | No budget categories |
| Reconciliation shows a gap | Logged effort does not match attendance — usually under-logging |
| A period cannot be re-billed | Cancel the existing bill first |
| The wrong period was billed | Cancel and regenerate — the adjustments are lost |
Related
- Resource Bills — what generation produces
- Categories — where billability is decided