> ## Documentation Index
> Fetch the complete documentation index at: https://help.fieldpulse.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How to Create Job Reports

> Build a job report in FieldPulse to check profit margin on completed work, compare scheduled time against actual duration, and sort jobs by lead source.

> **Who uses this:** Admins have Full Reporting access, and Team Managers can be given it. Service Agents and Limited Agents do not have Full Reporting access. **Availability:** All regions.

Build a job report from the **Jobs** tab in raw data reporting. It pulls job records — status, schedule, durations, assigned users, and the totals on the related estimate and invoice — into one table you can filter, group, and export.

## Overview

A job report answers questions about the work itself and the money attached to it, because the job record carries the customer, the schedule, the crew, the durations, and the related estimate and invoice totals. Use it to see profit margin on completed jobs, sort jobs by customer lead source, or compare the time you scheduled against the time the job actually took. Common job reports include jobs by lead source, job profit margin, and job duration.

Building a job report follows the same path as every other raw data report — set a date range, choose the columns, set filters, then read the table. Job reporting is part of [FieldPulse's dashboards and reporting](https://www.fieldpulse.com/features/dashboards-and-reporting). For the parts of the reporting flow that are the same on every record type — saving a report, adding it to your dashboard, and exporting to CSV — see [How to Use Raw Data Reporting](/reporting/raw-data/using-raw-data-reporting).

## Video walkthrough

<Frame caption="Video walkthrough: Creating a job report from the date range through columns and filters">
  <iframe src="https://www.loom.com/embed/437e2f91c48142ee959051d74cc1a458?hide_owner=true&hide_share=true" width="100%" height="420" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen />
</Frame>

## Before you begin

* Create the jobs you want to report on. See [How to Create a Job](/jobs/jobs-tasks/creating-a-job).

* Check that your role has reporting access. An Admin has **Full Reporting access**; a Team Manager needs **Full Reporting access** turned on.

## Set the date range

1. Select **Reporting** under the **Management** tab in the left-side menu.

2. Select the **Jobs** tab, then select **Raw Data**.

3. Select the calendar icon and choose the start date range you want to report on.

4. Select **Load Data**.

<img src="https://mintcdn.com/fieldpulse/psdMNh7id29SyYp0/static/images/_api/9420533-job-reports/01.png?fit=max&auto=format&n=psdMNh7id29SyYp0&q=85&s=c508ad0a33177d73034e72cd83cd3d0a" alt="The Start Date Range calendar open in raw data reporting, with preset ranges from Today through Last 30 Days listed beside two month calendars" width="1642" height="794" data-path="static/images/_api/9420533-job-reports/01.png" />

The calendar offers these presets:

| **Preset**       | **Date range**                                    |
| ---------------- | ------------------------------------------------- |
| **Today**        | 12:00 AM to the current time                      |
| **Yesterday**    | The previous day, 12:00 AM to 11:59 PM            |
| **This Week**    | Monday through Sunday of the current week         |
| **Last Week**    | The previous week                                 |
| **Last 7 Days**  | The previous seven days, including today          |
| **This Month**   | The first of the current month to the current day |
| **Last Month**   | The entire month before the current month         |
| **Last 30 Days** | The previous 30 days, including today             |
| **Custom**       | Start and end dates you select on the calendar    |

## Choose your columns

Select **Columns** to choose which job fields appear in the report table and the order they appear in.

<img src="https://mintcdn.com/fieldpulse/psdMNh7id29SyYp0/static/images/_api/9420533-job-reports/02.png?fit=max&auto=format&n=psdMNh7id29SyYp0&q=85&s=e900cd0b0f9c77bbfb9522a6abfd6937" alt="The Columns panel open in raw data reporting, with a checkbox for each report field and the Columns button highlighted in the toolbar" width="1200" height="717" data-path="static/images/_api/9420533-job-reports/02.png" />

The job report includes these columns by default:

| **Column**                              | **What it holds**                                                                                                                                                                                                |
| --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **#ID**                                 | The job number                                                                                                                                                                                                   |
| **Customer**                            | The customer linked to the job record                                                                                                                                                                            |
| **Contact**                             | The customer contact selected on the job record — Contact Name, Contact Email, and Contact Phone                                                                                                                 |
| **Title**                               | The job record title                                                                                                                                                                                             |
| **Subtitle**                            | The job record subtitle                                                                                                                                                                                          |
| **Status**                              | The job workflow status                                                                                                                                                                                          |
| **Start Date/Time**                     | The date and time the job was scheduled to begin                                                                                                                                                                 |
| **End Date/Time**                       | The date and time the job was scheduled to end                                                                                                                                                                   |
| **Created At**                          | The date and time the job record was created in FieldPulse                                                                                                                                                       |
| **Created By**                          | The author of the job record                                                                                                                                                                                     |
| **Location**                            | The service location for the job                                                                                                                                                                                 |
| **Assigned Team Members**               | The users assigned to the job                                                                                                                                                                                    |
| **Assigned Teams**                      | The teams assigned to the job                                                                                                                                                                                    |
| **Related Invoice Status**              | The status of the linked invoice                                                                                                                                                                                 |
| **Total Invoice Amount**                | The total amount on the related invoice                                                                                                                                                                          |
| **Total Estimate Amount**               | The total amount on the related estimate                                                                                                                                                                         |
| **Total Invoice Amount Due**            | The remaining balance on the related invoice                                                                                                                                                                     |
| **Total Amount Paid**                   | The amount paid on the related invoice                                                                                                                                                                           |
| **Assets**                              | The assets linked to the job record                                                                                                                                                                              |
| **Related Estimates and Invoices**      | Record numbers for estimates and invoices linked to the job record                                                                                                                                               |
| **Related Estimates**                   | Record numbers for estimates linked to the job record                                                                                                                                                            |
| **Related Estimate's QuickBooks Class** | The QuickBooks class of the related estimate record                                                                                                                                                              |
| **Related Invoices**                    | Record numbers for invoices linked to the job record                                                                                                                                                             |
| **Related Invoices's QuickBooks Class** | The QuickBooks class of the related invoice record                                                                                                                                                               |
| **Notes**                               | Notes on the job record                                                                                                                                                                                          |
| **Field Notes**                         | Notes left by the assigned users on the job                                                                                                                                                                      |
| **Tags**                                | Tags attached to the job record                                                                                                                                                                                  |
| **Related Project**                     | The project linked to the job record                                                                                                                                                                             |
| **Job Duration**                        | Time spent in the In Progress status type, in HH:MM:SS — **Job Duration Decimal** holds the same time in hours                                                                                                   |
| **Scheduled Duration**                  | Time scheduled for the job, in HH:MM:SS — **Scheduled Duration Decimal** holds the same time in hours                                                                                                            |
| **Travel Duration**                     | Time spent in the On The Way status type, in HH:MM:SS — **Travel Duration Decimal** holds the same time in hours                                                                                                 |
| **Total Timesheet Duration**            | The sum of all timesheets related to the job record, in HH:MM:SS — **Total Timesheet Duration Decimal** holds the same time in hours                                                                             |
| **Custom Fields**                       | User-created fields related to the job record                                                                                                                                                                    |
| **Job Tags**                            | User-created tags related to the job record                                                                                                                                                                      |
| **Estimate — Product**                  | Total Product Cost, Total Product Amount, and Total Product Margin on the related estimate — the sum of product line item costs, the sum of product line item prices, and the overall margin on those line items |
| **Estimate — Service**                  | Total Service Cost, Total Service Amount, and Total Service Margin on the related estimate — the sum of service line item costs, the sum of service line item prices, and the overall margin on those line items |
| **Invoice — Product**                   | Total Product Cost, Total Product Amount, and Total Product Margin on the related invoice — the sum of product line item costs, the sum of product line item prices, and the overall margin on those line items  |
| **Invoice — Service**                   | Total Service Cost, Total Service Amount, and Total Service Margin on the related invoice — the sum of service line item costs, the sum of service line item prices, and the overall margin on those line items  |

The report also includes a **Clock In Date/Time** column and a **Clock Out Date/Time** column.

### Customer columns

The **Customer** group adds the customer-record fields to the job report:

| **Column**                   | **What it holds**                                                                   |
| ---------------------------- | ----------------------------------------------------------------------------------- |
| **Custom Fields**            | User-created fields related to the customer record                                  |
| **Customer Phone**           | The customer's primary phone number                                                 |
| **Customer Email**           | The customer's primary email address                                                |
| **Customer Phone 2**         | The customer's secondary phone number                                               |
| **Customer Email 2**         | The customer's secondary email address                                              |
| **Customer Assigned To**     | The user assigned to the customer record                                            |
| **Customer Lead Source**     | The lead source                                                                     |
| **Customer Pipeline Status** | The customer's custom sales pipeline status                                         |
| **Customer Next Steps**      | The next steps listed on the custom sales pipeline                                  |
| **Customer Notes**           | Notes on the customer record                                                        |
| **Customer Job Notes**       | Job notes on the customer record, which are inserted onto job records automatically |
| **Customer Created Date**    | The date and time the customer was added to FieldPulse                              |
| **Customer Tags**            | Tags attached to the customer record                                                |
| **Parent Customer**          | Groups and analyzes the data by parent customer                                     |

### Job status workflow columns

The **Job Status Workflow** group adds a set of columns for each status in your custom status workflow:

| **Column**                         | **What it holds**                                           |
| ---------------------------------- | ----------------------------------------------------------- |
| **Start Timestamp**                | The date and time the workflow was changed to this status   |
| **End Timestamp**                  | The date and time the workflow was changed from this status |
| **Total Duration**                 | The total time spent in this status, in HH:MM:SS            |
| **Current Total Time in Status**   | Recorded in HH:MM:SS                                        |
| **Completed Total Time in Status** | Recorded in HH:MM:SS                                        |

## Set your filters

Before running the report, set filters to narrow the results. Select the **Filters** icon, then choose how you want to filter the report.

<img src="https://mintcdn.com/fieldpulse/psdMNh7id29SyYp0/static/images/_api/9420533-job-reports/03.png?fit=max&auto=format&n=psdMNh7id29SyYp0&q=85&s=653b9603fe6e0e1964b9ccfae138ab2f" alt="The Filters panel open in raw data reporting, with an expandable list of job fields and the Filters button highlighted in the toolbar" width="1200" height="723" data-path="static/images/_api/9420533-job-reports/03.png" />

The **Filters** panel offers these job fields:

| **Field**                                                          | **How you filter**                                                          |
| ------------------------------------------------------------------ | --------------------------------------------------------------------------- |
| **#ID**                                                            | Filter by contents                                                          |
| **Customer**                                                       | Filter by contents                                                          |
| **Contact Name**                                                   | Select the name                                                             |
| **Contact Email**                                                  | Select the email address                                                    |
| **Contact Phone**                                                  | Select the phone number                                                     |
| **Title**                                                          | Filter by contents                                                          |
| **Subtitle**                                                       | Filter by contents                                                          |
| **Status**                                                         | Select the status                                                           |
| **Job Created Date**                                               | Filter by date                                                              |
| **Job End Date**                                                   | Filter by date                                                              |
| **Start Date/Time**                                                | Filter by date                                                              |
| **End Date/Time**                                                  | Filter by date                                                              |
| **Created At**                                                     | Filter by contents                                                          |
| **Created By**                                                     | Filter by contents                                                          |
| **Location**                                                       | Filter by contents                                                          |
| **Assigned Team Members**                                          | Filter by contents                                                          |
| **Assigned Teams**                                                 | Filter by contents                                                          |
| **Related Invoice Status**                                         | Select the status                                                           |
| **Assets**                                                         | Filter by contents                                                          |
| **Related Estimates and Invoices**                                 | Filter by contents                                                          |
| **Notes**                                                          | Filter by contents                                                          |
| **Field Notes**                                                    | Filter by contents                                                          |
| **Tags**                                                           | Filter by contents                                                          |
| **Related Project**                                                | Select the project                                                          |
| **Job Duration**, **Job Duration Decimal**                         | Filter by contents                                                          |
| **Scheduled Duration**, **Scheduled Duration Decimal**             | Filter by contents                                                          |
| **Travel Duration**, **Travel Duration Decimal**                   | Filter by contents                                                          |
| **Total Timesheet Duration**, **Total Timesheet Duration Decimal** | Filter by contents                                                          |
| **Custom Fields**                                                  | Select the custom field                                                     |
| **Older Than**, **Within the Last**, **Within the Next**           | Enter a whole number and pick a duration unit, from Minutes through Decades |
| **Customer Phone**, **Customer Phone 2**                           | Select the phone number                                                     |
| **Customer Email**, **Customer Email 2**                           | Select the email address                                                    |
| **Customer Assigned To**                                           | Filter by contents                                                          |
| **Customer Lead Source**                                           | Select the lead source                                                      |
| **Customer Pipeline Status**                                       | Select the status                                                           |
| **Customer Next Steps**                                            | Filter by contents                                                          |
| **Customer Notes**                                                 | Filter by contents                                                          |
| **Customer Job Notes**                                             | Filter by contents                                                          |
| **Customer Created Date**                                          | Filter by contents                                                          |
| **Customer Tags**                                                  | Filter by contents                                                          |
| **Job Status Workflow — Start Timestamp**                          | Select *All*, *Last 24 Hours*, *Today*, *Last 7 Days*, or *Custom*          |
| **Job Status Workflow — End Timestamp**                            | Select the end date and time                                                |
| **Job Status Workflow — Total Duration**                           | Select the duration                                                         |

The **Older Than**, **Within the Last**, and **Within the Next** filters calculate dynamically from the current time in your timezone every time the report runs, so your saved reports never go stale.

### Filter operators

When you filter by contents, choose an operator and then enter the values to filter the data on.

| **Operator**             | **Retrieves data**                         | **Example**                                       | **Data retrieved**                                          |
| ------------------------ | ------------------------------------------ | ------------------------------------------------- | ----------------------------------------------------------- |
| Equals                   | Equal to a specified value                 | Created By - Equals Tom Gause                     | For all records created by Tom Gause only                   |
| Not Equal                | Different from a specified value           | Tag - Not Equal to HVAC                           | For all records except those using the HVAC tag             |
| Less Than                | Lower than a specified value               | #ID - Less than 1144                              | For all records below #1144                                 |
| Less Than or Equal To    | Lower than or equal to a specified value   | Job Date/Time - Less than or equal to 12/13/2023  | For jobs scheduled before or on 12/13/2023                  |
| Greater Than             | Greater than a specified value             | Job Duration - Greater than 60 minutes            | For jobs in the In Progress status type for over 60 minutes |
| Greater Than or Equal To | Greater than or equal to a specified value | Job Date/Time - Greater than or equal to 1/1/2024 | For jobs scheduled on or after 1/1/2024                     |
| In Range                 | Including and between two specified values | #ID - Between 1225 and 1236                       | For all estimate records with #IDs between 1225 and 1236    |
| Starts With              | Begins with a specified value              | Title - Annual                                    | For all job records beginning with Annual                   |
| Ends With                | Ends with a specified value                | Location - TX                                     | For all job locations ending with TX                        |
| Blank                    | No values are in the field                 | Subtitle                                          | For all job records with blank subtitles                    |
| Not Blank                | Values in the field                        | Notes                                             | For all job records with values in the notes field          |

## Common job reports

These are the column, filter, and grouping combinations behind the job reports companies run most often.

### Job profit margin

Use this report to view your profit margin on completed jobs. Customize the columns to your needs, but include *Invoice - Total Service Margin* and *Invoice - Total Product Margin*, and set the **Status** filter to *Completed*.

### Jobs by lead source

Use this report to view your job data sorted by customer lead source. Customize the columns to your needs, but include *Lead Source*, and group by *Lead Source*.

### Job duration

Use this report to view scheduled job time against actual job duration on completed jobs. Customize the columns to your needs, but include *Scheduled Duration* or *Scheduled Duration Decimal* and *Job Duration* or *Job Duration Decimal*, and set the **Status** filter to *Completed*. *Scheduled Duration* is the time you booked the job for, and *Job Duration* is the time the job spent in the In Progress status type.

### Estimated vs. actual job duration

You can pull a report that compares the estimated (scheduled) duration of a job against the actual duration. The estimated duration is based on the time you scheduled the job for. The actual duration is based on the technician's clock-in and clock-out times recorded in the timesheets for that job, which you can report on in [How to Create Timesheet Reports](/reporting/raw-data/timesheet-reports).

### Technician punctuality

You can track technician punctuality by comparing the scheduled arrival window to when the technician actually started work. The scheduled arrival is the designated time frame set for the job. The actual arrival can be determined by tracking when the technician first updates the job status — for example, when they select *On the Way* or *Started*.

<Note>
  The technician's clock-in time is on a separate report, the [timesheet report](/reporting/raw-data/timesheet-reports). Comparing the job's scheduled arrival window to the time the technician selects a given custom status is the most direct way to evaluate late arrivals against the job schedule.
</Note>

<Frame caption="Video walkthrough: Building the common job reports, including profit margin, lead source, and duration">
  <iframe src="https://www.loom.com/embed/f268fa72c83148c19adb3e60a668508c?hide_owner=true&hide_share=true" width="100%" height="420" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen />
</Frame>

## FAQs

### Can I save a job report to use again?

Yes — either as a saved report you reopen from **Select Report**, or as a widget on your Pulse Dashboard. See [How to Use Raw Data Reporting](/reporting/raw-data/using-raw-data-reporting) for the saving steps.

### Can I export a job report to a spreadsheet?

Yes. **Export CSV** downloads the report currently on your screen as a CSV file to your device. See [How to Use Raw Data Reporting](/reporting/raw-data/using-raw-data-reporting) for the full export flow.

## Related articles

* [How to Use Raw Data Reporting](/reporting/raw-data/using-raw-data-reporting)
* [How to Create a Job](/jobs/jobs-tasks/creating-a-job)
* [Setting Up Job Costing](/jobs/jobs-tasks/job-costing)
* [How to Create Timesheet Reports](/reporting/raw-data/timesheet-reports)
* [How to Create Customer Reports](/reporting/raw-data/customer-reports)

Your job report is working when the table returns the jobs you expected for the date range, shows the status, duration, and financial columns you selected, and narrows to the jobs you care about once your filters are applied.


## Related topics

- [How to Create Subtask Reports](/reporting/raw-data/subtask-reports.md)
- [How to Create Timesheet Reports](/reporting/raw-data/timesheet-reports.md)
- [How to Create Project Reports](/reporting/raw-data/project-reports.md)
- [How to Create Task Reports](/reporting/raw-data/task-reports.md)
