> For the complete documentation index, see [llms.txt](https://learn.withessential.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.withessential.com/customers-and-work/jobs/job-costing-on-a-job.md).

# Job Costing on a job: revenue, costs, and margin

The Job Costing card on a job page shows revenue against cost so you can see the margin on that job at a glance. It has two columns: Revenue on the left, Costs on the right.

Revenue totals any invoices linked to the job (draft and void invoices don't count) plus any revenue you've added manually for work billed outside Essential. Costs totals labor — clocked time valued at each technician's cost rate on the day the work happened, plus any manual labor entries — and materials, the items used on the job.

A margin pill above the columns shows the percentage, colored red below 0%, amber under 15%, and green at 15% or higher. A cost bar breaks the total down visually between labor, parts, and margin.

If a technician who worked the job has no cost rate set, a warning banner calls it out — their time is currently costing $0, which inflates the margin — with a link to set one in Settings > Job Costing.

Each column stays collapsed to its headline numbers until you expand it. Expanded, Revenue lists linked invoices (with links to each) and any manually added revenue, plus buttons to link an invoice or add/edit manual revenue. Expanded, Costs lists each technician's labor — clocked hours or a manual entry — and the job's items, tucked in below labor.

If your business tracks travel time, a note under the labor rows shows how much drive time the job's labor includes — and, when your travel policy keeps some of it out of job costs, how many hours were left unallocated. See [Turn on Job Costing and set cost rates](/administration/settings/turn-on-job-costing-and-set-cost-rates.md) for the travel modes.

If a job has no revenue and no cost yet, the card collapses to just its title and two $0.00 rollup rows, offering the link-invoice, add-revenue, and add-labor actions to get started — the margin pill and cost bar only appear once there's something to calculate.

Job Costing must be turned on for your business, and your role needs the job-costing view permission, before this card appears; editing cost rates, settings, or (for non-inventory businesses) job items needs the manage permission.

> **Where to find it:** Open a job from Scheduling > Jobs; the Job Costing card appears on the job page.

## Related guides

* [Add manual revenue or a manual labor entry to a job](/customers-and-work/jobs/add-manual-revenue-or-labor-to-a-job.md)
* [Turn on Job Costing and set cost rates](/administration/settings/turn-on-job-costing-and-set-cost-rates.md)
* [Job inventory: reserved vs used parts, transfers, and shortages](/customers-and-work/jobs/job-inventory-reserved-vs-used-parts-transfers-and-shortages.md)
* [Job costing reports: profitability, cost breakdown, and more](/reporting-and-integrations/reporting/job-costing-reports.md)
* [The job detail page: what it shows](/customers-and-work/jobs/the-job-detail-page-what-it-shows.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://learn.withessential.com/customers-and-work/jobs/job-costing-on-a-job.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
