Skip to main content
Beebole’s cost rates track what work costs your organization internally. While billing rates represent what you charge, cost rates capture what you spend — and with both in place, Beebole shows you the margin on every project, person, and period in your reports.
Cost rates are not included in every Beebole plan. Review your plan and add-ons on the Subscription page. Who can view and edit them is controlled by the Costs permission — see Roles & permissions.

Managing cost and billing rates in Beebole


Cost methods

Each cost rate uses one of four methods:
Beebole Cost panel of a person with an Hourly rate card of $31.00 from Dec 01, 2025 unfolded and its Cost method list open on Daily rate, Fixed fee, Hourly rate (checked) and No cost, next to the No split selector

The cost method picker of a rate card


Where to set cost rates

Cost rates live in the Cost section of the organization, tag, project, or person settings panel — the same panel where billing rates are configured. You can set them at four levels:
1

Open the Cost section

Open the organization (Settings > Account Settings), or click Tags, Projects, or People in the sidebar and then the tag, project, or person name. Scroll to Cost.
2

Add a rate

Click Add.
3

Set the start date

Pick the From date — the date the rate takes effect.
4

Choose the method and amount

Select a Cost method and enter the Amount with its currency. Changes are saved automatically.
Beebole Cost panel of a person with an hourly rate card open, showing the From date of Dec 01, 2025, the Cost method set to Hourly rate with No split, and an Amount of $31.00

A cost rate card opened in a person's Cost panel

Cost rates cascade exactly like billing rates: rates set on the organization or on a tag are inherited by the projects and people beneath them, and a rate added directly on a project or person overrides the inherited one.
To reuse a set of cost rates, click Copy below them, open another tag, project, or person, and click Paste in its Cost section. The pasted rates replace the ones set there. Inherited rates can’t be copied.

Which rate applies to a time entry

Cost rates resolve the same way as billing rates: the most specific rate wins. For each time entry, Beebole looks for a cost rate on the project the time was logged against — starting at the deepest subproject and walking up the hierarchy — and falls back to the person’s rate when no project rate applies. Rates inherited from tags or the organization count as the rate of the project or person they cascade to. As a result, a cost rate set on the organization applies to every project that has no rate of its own or from a tag, and it takes priority over the rates set on people. Cost rates cannot be set directly on a task: time tracked on a task takes the rate of the projects the task is linked to, or the person’s rate.

Rate splits

With an Hourly rate or Daily rate, you can replace the single amount with a separate amount per person or project:
  • No split — one cost applies to everyone.
  • Split by persons — a separate cost for each person you add to the list, for projects or tags where team members cost different amounts.
  • Split by projects — a separate cost for each project you add to the list.
You can see at a glance which rates are split. Where a single-amount rate shows its amount, a split rate’s card shows the split it uses — Split by persons or Split by projects — with badges for the people or projects the cost is shared across. Open the card to read or change each line.
Beebole Cost panel of the Website Redesign project with a folded rate card reading Hourly rate Split by persons, from Jan 01, 2026 with No repeat, the badges of the two people the cost is split across, and the Add and Copy buttons

A folded cost card split by persons


Changing rates over time

Each cost rate has a single From date. The rate applies to time entries dated on or after that date, until a rate with a later From date takes over — so an annual salary adjustment is just a new rate starting on the right date, and historical entries keep their original cost. A Fixed fee cost can also repeat: turn on Repeat in the rate card and choose how often it recurs — Every 1 or more days, weeks, months, or years.

Time off in people costs

Whether time off counts toward your people costs depends on its absence type. Each type has an Is paid (included in people costs) checkbox in its Units panel, under Settings > Time Off, and it is checked on every new type.
  • For a paid type, a leave day is valued with the person’s cost rate for that day, exactly as a regular time entry would be, so it shows up in the people cost totals of your reports even though no project time was tracked. Time off is never recorded on a project, so it does not draw on a project’s budget.
  • For an unpaid type, the absence carries no cost. Its hours still show in reports, but they add nothing to cost totals.
A Fixed fee cost is shared across the hours it covers, which include paid time off but not unpaid time off. Time off never carries a billing amount, paid or not. See Time off for details.

Margins in reports

When both billing and cost rates are configured, custom reports can compare what you charge against what you spend. Add the Billing, Cost, and Margin columns to a report — Margin % is also available — and group by project, person, tag, or period to see where you make or lose money.
Beebole custom report for the current year grouped by client, with the Time: Hours, Time: Billing, Time: Cost and Time: Margin columns, Quantum Logistics at a negative margin of -1,570.00, and a Total row of 1,498,460.00 billed for 942,328.00 in cost

A report grouped by client with the Billing, Cost and Margin columns

Set up cost rates early, even with approximate amounts. Having both billing and cost data from the start makes margin reports immediately useful.

Billing Rates

Define what you charge for tracked time — the other half of margin tracking.

Budgets

Set cost, billing, and hours targets on projects and catch overruns early.

Custom Reports

Build reports with billing, cost, and margin columns, grouped your way.

Time Off

Configure absence types and see how time off is valued in your people costs.

Frequently asked questions

In Beebole, billing rates represent what you charge for work, and cost rates represent what that work costs you internally. With both configured, reports show the margin between them.
No. You can use either independently in Beebole: billing rates alone track revenue, and cost rates alone track internal costs. You only need both to measure margins.
Yes. On the project’s cost rate, choose Split by persons and enter an amount for each team member. Beebole then applies each person’s cost when they log time to that project.
Because a project rate comes first. For each time entry, Beebole looks for a cost rate on the project, starting at the deepest subproject and walking up, and uses the person’s own rate only when no project in the chain has one. A rate the project inherits from a project tag or from the organization counts as the project’s rate. So a cost rate set on the organization, or on a project, takes priority over every person’s own rate. To give each person their own cost on a project, choose Split by persons on that project’s cost rate. To rely on the person rates instead, remove the cost rate set on the project, its tags, or the organization.
It depends on the absence type. When Is paid (included in people costs) is checked on the type — the default for every new type — Beebole values the leave day with the person’s cost rate and includes it in the people cost totals of your reports, the same way a regular time entry is. When it is unchecked, as you would for unpaid leave, the absence carries no cost. Time off never carries a billing amount.
Add a new cost rate on the person with a From date set to when the change takes effect. Beebole applies each rate only to time entries dated on or after its From date, so earlier entries keep the old cost.
Yes. Each cost rate — and each billing rate — carries its own currency, so a contractor paid in dollars and a team costed in euros can coexist. Reports convert every amount into the report’s currency at the exchange rate of the entry’s date, using daily rates Beebole retrieves from an exchange-rate service, and the stored rates are never changed. See Amounts in several currencies.