Paying Your Team for Tracked Time
If you use contractors, or pay anyone by the hour, the time they log in Sodium is already the answer to what you owe them. This guide walks through flagging who is paid that way, reviewing and approving their time, recording the payment, and checking what it all cost against what the work is worth.
Before you start
Paying for time is the mirror image of billing for it. Where Unbilled Time shows what clients owe you at your charge rates, Unpaid Time shows what you owe your team at their cost rates. The workbench works the same way, so if you already bill time you know most of this.
Three things need to be in place first:
- Time tracking switched on, and people actually logging time — see Tracking and Billing Time.
- A cost rate for everyone you intend to pay. Cost rates are what a pay run pays at, and time logged before a rate existed carries no cost. Set them first — Setting Charge-out and Cost Rates covers it.
- The Cost Rates permission. Everything on this page is money-per-person, so it is closed to anyone without it — and to anyone restricted to their own time.
1Say who is paid for their time
Most practices pay salaried staff a salary regardless of what they log, so nobody is treated as paid-by-the-hour until you say so. Go to Settings ( at the top right) → Time Tracking → Team Members and switch on Paid for time for each contractor or hourly member.
That switch is the whole configuration. Until at least one person carries it, the Unpaid Time page has nothing to show and the button that opens it does not appear — so a practice that pays everyone a salary never sees this part of Sodium at all.
2Open Unpaid Time
Go to the Time page and click Unpaid Time, next to Unbilled Time in the header. The top of the page totals what the practice owes:
- Unpaid amount — everything owed across everyone, in the window you are looking at.
- Approved for payment — how much of that has been signed off and is ready to pay.
- Unpaid time — the same figure in hours, with a note of any entries carrying no cost rate.
- Oldest time — how far back the unpaid work goes. If that reads six weeks, somebody has been waiting.
Set the date window before you start. Up to end of last month is the usual choice for a monthly pay run, and it keeps the current month's part-finished work out of the way. Then sort the member list — by amount owed, hours, oldest time, or name — and search if the list is long.
Each member's row shows what they are owed, the hours behind it, how many entries, how old the oldest is, and how much is already approved. Someone who has left the practice still appears, badged Left, for as long as they have unpaid time — leaving is not a reason to stop owing them.
3Review a member's entries
Click a member and their unpaid entries open beside the list, oldest first, with everything payable already ticked — the common case is paying the lot. Untick anything you want to hold back for this run; it stays unpaid and reappears next time.
Click a row to open the entry if it needs correcting first. This is the moment to do it: once time has been paid it is locked, and correcting it means deleting the pay run.
4Approve time for payment
With the entries you are happy with ticked, click Approve for payment. Approval is a sign-off, not a payment: it records that someone senior has looked at the time and agreed it. The member's row picks up an approved figure, and the practice total at the top shows how much of the book is ready to go.
Use it when the person reviewing the time is not the person who pays it — a manager approves during the month, whoever runs payments settles it at month end. If that is all one person, skip it: paying unapproved time approves it on the way through.
If a set is already fully approved, the same button reads Remove approval and takes the sign-off back off.
5Record the payment
Under the entries is a preview of exactly what the run will record: one line for each distinct cost rate, with the entries, hours and amount on each, and the total underneath. If the member's rate changed part-way through the period, you will see two lines — which is the point of showing rates rather than a single number.
Check it against what you are about to pay them, then click Record payment of £X. That creates a pay run: a record of who was paid, for which entries, covering which dates, for how much. Those entries are now paid, they drop off the unpaid list, and the next member is a click away.
6Payment history, and undoing a run
Payment history at the foot of the page lists every run: the member, the dates the time covers and how many entries, the hours, the amount, and when it was recorded and by whom. Selecting a member narrows it to their runs, which is what you want open when someone queries a payment.
Paid the wrong period, or need to correct an entry inside a run? Delete the run. Its entries go back to approved — not all the way back to unreviewed — so once the correction is made they can be paid again without repeating the sign-off. That deletion is also the only way to edit or delete a paid entry: paid time is locked until the run behind it is gone.
Entries with no cost rate
An entry can only be paid if it carries a cost rate, and any that do not are flagged on the member's row and counted in the totals rather than quietly dropped. They are excluded from the run, never a blocking error — the rest of the payment goes through.
This almost always means time was logged before that person had a cost rate. Rates are stamped onto an entry when it is saved and never re-resolved, so setting a rate now fixes every entry from here on but does not reach back, and editing an old entry will not give it one either. If the time genuinely needs paying, delete those entries and re-log them once the rate is in place — with the rate dated to cover the period they fall in.
Check cost against value
Paying for time gives you the other half of a number most practices only ever guess at. Open the Cost & Profit report and every hour logged is valued at what it cost, set against what the billable part of it is worth, with the difference shown as profit.
Group it by client to find the ones you are losing money on — the fixed-fee client whose workload has crept up for two years is the classic, and it shows here long before it shows in the bank. Group it by team member for your true cost of delivery. Read the second one as a picture of the work rather than a scoreboard: the lowest billable value often belongs to whoever absorbs everything nobody else wants to do.
Where to go next
- Setting Charge-out and Cost Rates — the rates everything here is calculated from, and how to change one without disturbing history.
- Tracking and Billing Time — the client side of the same hours.
- Reports — Service Time and Team Time sit alongside Cost & Profit and answer the neighbouring questions.