An hour bank is a fixed block of development or support hours that a client buys in advance from a software agency and uses as needed over an agreed period. Every logged hour comes off the balance, and when the balance runs out the client buys a new bank or moves to hourly billing. The definition is simple; the disputes are born in the logging.
How an hour bank works in practice
Client and contractor agree on three things: how many hours are bought, at what rate, and how long they stay valid. From then on every month looks the same:
- Opening balance is what is left from the previous month;
- Hours purchased are added when the client buys another block;
- Hours used are the total hours logged against tasks that month;
- Closing balance is opening plus purchased minus used, and it carries into the next month as its opening balance.
An hour bank usually covers work that is hard to plan ahead: bug fixes, small changes and ongoing support.
When an hour bank fits, and when it does not
An hour bank fits when the work is ongoing and cannot be broken down in advance into a fixed-price project. The client gets budget certainty, and the contractor gets payment in advance and availability that is easy to plan.
It fits less well for a project with a defined deliverable and a delivery date. There an hour bank moves the whole estimation risk to the client: any overrun simply comes off the balance.
Where hour banks break
- The balance shows up only on the invoice. The client learns the bank is empty when the invoice is already on its way. A negative balance is announced before the invoice, not inside it.
- Hours without a task. "12 hours of support" cannot be checked. An hour attached to a task can.
- No agreement on unused hours. Do they roll over to the next period, and until when? Without that clause the question comes up exactly when goodwill is short.
- A rate change midway. If the bank is measured in money rather than hours, a rate increase quietly shrinks the hours left.
- Late logging. An hour forgotten and logged a month later changes a balance that was already reported.
How to track an hour bank
One table with a row per month is enough: opening balance, hours purchased, hours used, closing balance and notes. Two rules make it reliable:
- the hours-used figure comes from the time log itself, not from an estimate at month end;
- a month's closing balance is always the next month's opening balance, and nobody retypes it.
Among the templates on this site there is a ready hour bank tracker with these formulas.
What SLAtech Vantage does with hours
SLAtech Vantage has no hour bank balance field. It holds the data the balance is calculated from:
- every hour is logged against a task, with the date, who logged it and for which business, and with the rate in force at the moment of logging. A rate change does not rewrite hours already worked;
- a forgotten hour is logged in the current month and marked with the month it belongs to, so a month that was already accepted does not change;
- a task can carry a monthly cap in money. Reaching the cap flags the task and warns whoever logs time, but does not block logging.
Frequently asked questions
What is the difference between an hour bank and a retainer?
What happens when an hour bank balance goes negative?
Do unused hours roll over to the next month?
How can a client check that the hours taken from the bank are real?
Want to see hours attached to tasks on a real project? You can start with a trial.
Start a free trial