Rate coverage
See exactly where a rate is set, inherited, or missing — so no billable hour goes unpriced.
Coverage is the map of your rate card. It shows, for every client, project, and engagement, what bill rate actually resolves — and flags the gaps where none does. Find it in Settings → Rates.
Reading the tree
Coverage lays out your work as a Client → Project → Engagement tree. Each node shows its effective bill rate and where it comes from:
- Set here — a rate pinned directly on this node.
- Inherited — resolved from a broader scope, with the source named (e.g. "via Acme Co").
- Missing ⚠ — no rate resolves. This node's time would price at zero.
Click any node to set or fix its rate in place.
Cost gaps live on people
Bill rates attach to work (clients, projects, engagements); cost rates attach to people. So Coverage checks for a missing cost rate on each person, in a separate team-defaults table — not on the work nodes.
The bar at the top tallies your default bill rate, how many people are priced, how many clients have custom rates, and how many gaps remain. When everything resolves, it turns green: every node has a bill rate and every person a cost rate.
Same signal, two places
The amber "these numbers are understated" banner on the Profitability report — "X h with no bill rate, X h with no cost rate" — is the same coverage check, surfaced where it bites. Clear the gaps here and that warning goes away.
Why a missing cost rate hides your margin.