Setting Charge-out and Cost Rates

Rates are what turn logged hours into money — in both directions. This guide covers setting a charge-out rate and a cost rate for each team member, changing a rate when it goes up without disturbing the time already recorded, and deciding who in the practice is allowed to see what people cost.

Two rates, two questions

Every team member can carry two rates, and they answer different questions:

  • Charge rate — what an hour of their time is worth to a client. It applies to billable time only, and it is the figure that ends up on an invoice when you bill unbilled time.
  • Cost rate — what an hour of their time costs the practice. It applies to all their time, billable or not, because an unbillable hour costs exactly as much as a billable one. It is what the Cost & Profit report values time at, and what a pay run pays a contractor at.

You do not need both. A practice that only wants to invoice time can set charge rates and ignore cost rates entirely, and everything that depends on cost simply stays empty. But cost rates are the quicker half to fill in and the one that answers the harder question, so it is worth doing them at the same time.

1Set your practice defaults

Start with the fallbacks, because they mean most of your team needs nothing set at all. Go to Settings ( at the top right) → Time Tracking and fill in:

  • Default hourly rate — used for billable entries when the team member has no charge rate of their own.
  • Default cost rate — what an hour of time costs the practice, used when the team member has no cost rate of their own. It applies whether or not the entry is billable.

If your team is broadly homogeneous — a handful of people at similar seniority — the defaults alone may be all you ever set. Add individual rates only where the default is wrong.

2Set a team member's rates

On the same settings page, open the Team Members tab. Each row shows that person's charge rate and cost rate, and a rate shown faded is one they are inheriting from the practice default rather than holding themselves.

Click a row to open Rates for that person, then enter an Hourly rate, a Cost rate, or both. Leave either blank and they keep using the practice default for it — the placeholder shows what that default is, so you can see what blank means before you commit to it.

The same editor is on the team member's own user record if you are already there, and it behaves identically.

3Change a rate later

When you change a rate that is already in use, Sodium asks one question: keep the previous rate on record? The answer depends on why the rate is changing, and it is worth reading the two options rather than clicking through:

  • Keep the previous rate — the rate is going up. The old rate is closed off the day before the new one starts and stays on record, so you can still see what someone charged last year. Pick the date the new rate applies from.
  • Just update the existing rate — the old rate was simply wrong: a typo, or a rate entered against the wrong person. It is corrected in place with nothing kept.

Because rates are dated, you can also set a rise in advance. Enter the new rate in March with an April start date, and time logged in March still picks up the old rate while April's picks up the new one. Nobody has to remember to do it on the day.

4Correct a rate, or read the history

Open Rate history in the rate editor to see every rate that person has held, each with the dates it ran between and the current one badged. Click any of them to edit the rate itself or the dates it covers — useful when a rise was agreed from the first of the month but entered a fortnight late.

A rate with no From date has applied since the beginning, and the current rate has no To date because it has not ended. Editing history is bookkeeping rather than a recalculation: it changes what future entries pick up, and leaves everything already logged exactly as it was.

5How a rate reaches an entry

Both rates are worked out once, at the moment the entry is saved, and stored on it. The charge rate resolves in this order, and only for billable time:

  1. A rate typed on the entry itself, if any.
  2. The team member's charge rate on the date of the entry.
  3. Your practice default hourly rate.

The cost rate resolves the same way but without the first step — cost is never something anyone types on an entry — and it is stored whether the entry is billable or not.

The practical consequence: a member who logged time before you gave them a cost rate has entries with no cost on them, and setting a rate now does not reach back — not even by editing those entries. They are counted and flagged wherever cost matters rather than quietly ignored, and the paying for time guide covers what to do with them. Set the rate before the logging starts and the question never arises.

6Control who sees cost rates

What people cost is among the most sensitive numbers in a practice, so cost rates sit behind their own permission Cost Rates — rather than riding along with time tracking or reports. It is admin-only out of the box.

  • View shows the cost rate column, the default cost rate setting, the Cost & Profit report and the Unpaid Time page. Without it none of them appear anywhere, so there is nothing to notice and ask about.
  • Update allows changing them. Someone with view but not update can read cost rates and not touch them.

Charge rates are not hidden this way — they are ordinary time tracking data, and anyone who can see time can see what it is worth. Anyone restricted to their own time is closed out of the cost side entirely, whatever permissions they hold.

Where to go next

With rates set, the two things they feed are:

The Time Tracking feature page is the shorter overview of how all three fit together.