Maintain team rates and understand project profitability

The cost rate describes internal cost per hour of work. The bill rate values a billable hour against the client. In the Profitability tab, these combine with project expenses to produce computed revenue, cost, and margin.

Prerequisites
  • You're an Owner or Admin of your organization.

Save team rates

Open Budgeting → Team rates and edit the relevant person.

  1. Optionally enter a role label for description; it doesn't change access rights.
  2. Enter the cost rate as the internal hourly rate.
  3. Enter the bill rate as the client rate per hour.
  4. Check the currency and save.
  5. Check the displayed values and the effective date.

Account for stored rates and history

Every save creates a new rate version, effective from the moment of saving in the normal form. Time entries can already carry their applied cost and client rates. Those stored values take priority. If they're missing, profitability uses the team rate that matches the entry's start; for older entries from before the first rate version, the earliest known rate can step in. Missing rates are valued at 0 in the calculation and can skew the result.

Read the formulas

Open Profitability and compare the project rows and totals.

  • Revenue = billable hours × bill rate + billable expenses including markup.
  • Cost = all logged hours × cost rate + every assigned expense excluding markup.
  • Margin = revenue − cost.
  • Margin percentage = margin ÷ revenue × 100. At revenue 0, no margin percentage is calculated.

Work through an example

A project has 10 billable and 2 internal hours. The bill rate is €100, the cost rate €50. An expense of €100 is billable with a 20% markup. Revenue: 10 × €100 + €120 = €1,120. Cost: 12 × €50 + €100 = €700. Margin: €420, or 37.5%. The internal hours cost money but don't generate time-based revenue.

Know the limits of this view

The view shows valued output, not payments received. Hours labeled as billed here are billable hours; an invoice status isn't checked for that. The current UI hides projects with no logged hours, even if they already have expenses. Those projects are then also missing from the displayed totals. Amounts are also aggregated without currency conversion and shown as euros in this view. Only compare values on a consistent currency basis.

Frequently asked questions

Does a new team rate change all old values?

Rates already stored on time entries remain authoritative. For entries without such rates, the historical fallback valuation can apply. There's no blanket retroactive revaluation.

Why do monetary usage and revenue differ?

The budget overview uses bill rates stored on billable time entries. Profitability can fill in missing rates historically, and additionally factors in billable expenses including markup.

Why is a project with an expense missing?

The current profitability UI only shows projects with logged hours. A project with only expenses doesn't appear there yet, even though its expense is saved.

Keep reading

Couldn't find your answer, or still stuck?

Go to support

Last reviewed on 2026-09-27