> 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/reporting-and-integrations/reporting/revenue-by-technician.md).

# See revenue by technician

Revenue by technician shows issued invoice revenue grouped by the technicians who worked it — the technicians selected directly on each invoice together with the people assigned to visits on its linked jobs. Use it to compare attributed revenue across your field team without needing Job Costing to be turned on.

> **Where to find it:** Reports > Financial > Revenue by technician.

**Before you start:** Invoicing must be enabled, and your role needs reporting and invoice access.

1. Open **Reports**, then select **Revenue by technician** in the Financial section.
2. Choose Last 30 days, This quarter, Year to date, Last 12 months, or a Custom range.
3. Review each technician's invoice count, invoice numbers, total attributed revenue, and average revenue per invoice.
4. Sort any data column or download the report as a CSV when you need to work with the results elsewhere.

The report uses the business’s selected [accounting method](/reporting-and-integrations/accounting/change-accounting-method.md), shown beside the date range. Accrual recognizes finalized invoice revenue by invoice date; cash recognizes collections by payment date, including partial payments. Refunds reduce the appropriate period. Revenue excludes sales tax. An invoice credits both directly selected technicians and technicians assigned to visits on its linked jobs. Each person is counted once, even if selected directly and assigned to a linked job. When that works out to more than one technician, Essential divides the recognized revenue evenly across them. Any indivisible cents are distributed across the shares so the technician rows always add back to the exact recognized amount. For example, a $2,120.00 invoice credited to three technicians appears as $706.67, $706.67, and $706.66. A technician who worked several visits on the same invoice is still counted once.

Only invoices that credit at least one technician count toward the technician rows. To change who is credited, open the invoice’s linked-records control, add or remove jobs or technicians in **Related Records**, and choose **Save links**. You can also update visit assignments in Scheduling. Reports use the saved links and current assignments. Removing a directly selected technician still leaves their credit from any linked job.

## Review unattributed invoices

The **Unattributed revenue** tile shows the total for invoices in the period that credit no technician, and the **Unattributed invoices** table below the main report lists each one with its customer, invoice date, and amount. An invoice lands here when no technicians are selected directly and its linked jobs have no assigned technicians. Select a row to open that invoice, link a job or technician under **Related Records**, or check the visit’s assignments — or leave it unattributed if the revenue genuinely isn't technician work, such as fees or materials-only billing. The unattributed table has its own CSV download.

## Related guides

* [Create an invoice](/revenue/invoices/create-an-invoice.md)
* [Create an invoice from a job](/revenue/invoices/create-an-invoice-from-a-job.md)
* [Job costing reports: profitability, cost breakdown, and more](/reporting-and-integrations/reporting/job-costing-reports.md)
* [Export, filter, and drill into a report](/reporting-and-integrations/reporting/export-filter-and-drill-into-a-report.md)
* [Share a report with a colleague](/reporting-and-integrations/reporting/share-a-report-with-a-colleague.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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://learn.withessential.com/reporting-and-integrations/reporting/revenue-by-technician.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
