Rates
How rates for your timesheet records are calculated
You are viewing an older version of this documentation page. A newer version is available here.
Be aware: Rates are always calculated from the duration of a record.
The duration is often a rounded value and not the real difference between end
and begin
.
There are two rate types:
- Hourly rate: will be used to calculate the records rate by multiplying it with the duration (see below)
- Fixed rate: the value will be used to set the rate for every record, no matter how long the duration is
If any of the above is set to 0
, the records rate will be set to 0
.
A fixed rate always wins over an hourly rate.
And there are two different rates for each time-record:
- The regular hourly rate defines the external costs for yor customer (what actually goes on an invoice)
- And the internal rate defines your costs for the accounted work (your employees costs)
Defining rates
Rates can be defined in 4 different places;
- on the user level (in the user preferences)
- on the customer level
- on a project level
- and on the activity level
The values on the user level should always be filled, as they are the last place where Kimai always looks for a rate, if no other could be found.
The other rate settings (customer, project, activity) allow to set multiple rates.
Each customer/project/activity can have one rate setting, that acts as global fallback (if the username is not chosen) for every user, who has no dedicated rate for this object.
For example: a customer gets a global rate of 10€, and you additionally create one rate for user A for 20€. Now that means A will have the rate of 20€, but user B and C and D will have a rate to 10€.
Changing rates
Rate changes always only apply for future entries. If you change e.g. a user’s hourly rate, it will be used for all timesheet records that will be created from now on. But existing records will not be changed retroactive.
Additionally, if a record already has an hourly or fixed rate set, it will not be changed if you change the customer, project or activity. So if Project A has a rate of 100 and Project B 120, and you move a record from A to B it will not be automatically changed to 120.
Rate calculation
The algorithm to calculate a timesheet records rate works by summing up scores, where the highest score wins:
- Activity rate: 5 points
- Project rate: 3 points
- Customer rate: 1 points
- User specific rate: +1 point
This leads to the following decision matrix:
Activity rate | Project rate | Customer rate | |
---|---|---|---|
None-user rule | 5 | 3 | 1 |
User specific | 6 | 4 | 2 |
If no rate can be found, the users hourly-rate preference
will be used to calculate the records rate.
In case that the users hourly-rate
is not set or equals 0
, the records rate will be set to 0
.
The timesheet rate calculation is based on the following formula:
- Fixed rate:
$fixedRate
- Hourly rate:
$hourlyRate * ($durationInSeconds / 3600) * $factor
Edit rates
You find more information how and where you can edit the different rates types in these chapters:
Related articles
- Timesheet – View and manage your time-tracking data in the timesheet view
- Customer – Customers in Kimai
- Projects – Projects in Kimai
- Activities – Activities in Kimai
- User preferences – Settings that change the users personal Kimai experience