> For the complete documentation index, see [llms.txt](https://help.agencydesk.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.agencydesk.io/admin/reports/multi-job-recon.md).

# Multi-Job Recon

Review selected Jobs by Client, Business Unit, Category or date scope. Read costs and estimated or billed margins in home currency, reopen report links, print to PDF and export to Excel.

**Multi-Job Recon** takes everything [Recon](/jobs/recon.md) does for one Job and runs it across many at once.

A single Job's margin tells you how that Job went. It does not tell you whether the client is worth having, whether your website work is priced correctly, or whether a service line you have been running for three years actually earns anything. Those questions only answer at the level of a group of Jobs, and this is the report that groups them.

Because Agencydesk was built exclusively for agencies, the report combines recorded Task time, resource costs, supplier expense, meetings and billing from the selected Jobs. It uses the same underlying reconciliation figures as an individual [Recon](/jobs/recon.md), with amounts consolidated in the account’s home currency.

Open Reports in the left-hand navigation, then the Multi-Job Recon tab. The tab is available to Finance, Admins, Super Users and the Account Owner. Managers can use an individual Job’s Recon, but do not get this Reports tab.

## What it answers

### Is this client actually profitable?

A client can bill well and earn badly. Consolidating every Job you have ever run for them gives one margin figure for the whole relationship, including the hours that overran and the meetings nobody counted.

### Are websites profitable, and by how much?

Consolidate by [Job Category](/company-settings/general/job-categories.md) to compare a service line across the selected Jobs. Category is separate from a Client’s Business Unit: use Category based for website work across clients, and Client based for work belonging to one client or its Business Unit.

### Is Corporate Identity worth doing?

Some service lines are strategically valuable and financially thin. Worth knowing which is which, and by how much, before deciding whether to keep selling it at the current price.

### Is hosting and maintenance making money?

Low-value recurring work is where margin quietly disappears, because each Job is too small to review on its own. Consolidated across a year, the pattern is unmistakable.

{% hint style="info" %}
**Great for** the annual pricing review. Run each service line through this report once a year and you have evidence rather than opinion about which categories to raise rates on, which to templatise, and which to stop selling.
{% endhint %}

## Building the report

The report is built in three steps, shown as a stepper across the top.

### Step 1: Choose scope

Pick how to gather the Jobs:

* Client based — choose a Client, then optionally a Business Unit. Business Unit is the current name for the former Brand field.
* Category based — choose a Job Category to review a service line.
* Date based — choose a From and To date to find Jobs in that window.

Client and Category scopes can also use Add date window (optional), with From and To dates. Remove date window clears that extra restriction. The window selects Jobs; it does not trim the selected Jobs’ Recon figures to time entries or Invoices inside that period.

Click **Find jobs** to continue.

### Step 2: Select jobs

Matching Jobs are split into Active, Draft and Closed status tabs with counts. On a phone, use the status dropdown. Search narrows the list. If Active has no Jobs but another status has matches, that status opens automatically.

The table shows the Job number, Client, Job name with its status tag, the AE, **Progress** as tracked against estimated time with a coloured bar, and the **Due** date.

The progress bar compares tracked time with the Job’s estimate. On unfinished Jobs, a low percentage may mean work remains rather than that the Job finished efficiently.

Tick the Jobs to include, or use the header checkbox for the Jobs listed on the current page. Review other pages and status tabs as needed. The selected count beside Generate report is the scope that will be consolidated.

{% hint style="info" %}
Closed Jobs are useful for a finished-work review, while Active and Draft Jobs include work at other stages. Status alone does not certify final margin: check time completeness, stored rates, supplier expense, billing and the summary’s Estimated / Billed label.
{% endhint %}

### Step 3: Report

Choose Generate report and wait for the figures to load. Check the scope chips and Job count. Use Select jobs at the top to revise the chosen Jobs, or Choose scope to start with another Client, Category or date window. If no Jobs match, choose Change the scope.

### Reopen or share the report link

{% stepper %}
{% step %}

### Generate the report

Choose the scope and Jobs, then open Report.
{% endstep %}

{% step %}

### Keep the address

Bookmark or copy the generated address from the browser. It carries the scope and selected Job identifiers.
{% endstep %}

{% step %}

### Reopen with access

Opening that address restores the report selection for a signed-in person with access. It loads current figures; it is not a frozen copy of the report. The link does not grant another person access.
{% endstep %}

{% step %}

### Revise the selection

Choose Select jobs to load the matching list with the report’s Jobs ticked. Changing the scope by hand starts the later selection again.
{% endstep %}
{% endstepper %}

## The headline cards

Hours Variance and Billing Efficiency summarise the selection. The **Account Owner / Super User** also receives the staff-cost **Time Variance Value** card. Finance and Admin do not see that staff-cost card.

### Hours Variance

Total tracked hours against total estimated hours across every Job in the selection, counting **billable and non-billable time together**, with the difference expressed as a percentage.

A negative variance means less time was tracked than estimated and is shown in green. On a selection containing unfinished Jobs, those hours may still be needed; green alone does not prove a saving or a finished result.

{% hint style="info" %}
`Hours Variance % = |Hours Variance| ÷ Total Estimated Hours × 100`

A selection estimated at **50:00**, being 37:00 billable plus 13:00 non-billable, that consumed **37:54** has a variance of **−12:06**.

`12:06 ÷ 50:00 × 100` = **24%** less than estimated.
{% endhint %}

### Time Variance Value

The labour-cost value of estimated Task hours not yet worked, based on stored resource rates. It includes unused estimates and overruns across the chosen Jobs; one can offset another.

This is a cost-of-time measure, rather than charge-out value or outstanding client billing. Check the selected Jobs and rates before reading it as an efficiency result.

Unused estimated hours do not by themselves establish free capacity. Review bookings and remaining work separately when making a staffing decision.

### Billing Efficiency

Billed Task hours compared with all tracked Task hours across the selection, including non-billable tracked time.

{% hint style="info" %}
Billing Efficiency % = Billed Task hours ÷ All tracked Task hours × 100

For example, 37:00 billed against 33:12 tracked gives 111.4%. Above 100% means billed hours exceed tracked hours; below 100% means tracked hours exceed billed hours. This is an hours comparison, not cash received or margin.
{% endhint %}

Inspect the contributing Jobs before interpreting a low percentage. Non-billable time is included in tracked hours, and incomplete time records can also distort the comparison.

## User Time Recon

Each included person has their Department, tracked / estimated hours, a bar, a share of hours and a Job-count pill. The figure labelled of hours is that person’s share of the selection’s estimated hours; it is not their percentage of invoicing or actual agency capacity.

Expand a person’s row with the arrow to see their Jobs. On a Job row, of their hours means that Job’s share of the person’s estimated hours. Follow a linked Job name to investigate its individual Recon.

{% hint style="info" %}
**Great for** understanding a client relationship properly. Consolidating a client's Jobs shows exactly who has been servicing them and how much of the agency's capacity that account has absorbed over time, which is rarely what anyone assumes.
{% endhint %}

### Labour cost per person and across the Jobs

For the Account Owner / Super User with cost figures shown, a small **so far / estimated** amount appears beneath each person’s hours when available. It turns pink over estimate; **No rate set** identifies hours without a cost rate. These figures use the rates saved on Task assignments.

The **Labour cost · All people on these jobs** row compares the selection’s cost of time committed so far with projected estimated labour cost. Expand it for one line per Job. Unassigned estimated work can contribute through Department average rates, so the total is not always just the sum of the visible people’s estimates.

### Hide or show staff costs

{% stepper %}
{% step %}
As the Account Owner / Super User, find the eye in the **User Time Recon** card header.
{% endstep %}

{% step %}
Choose **Hide cost figures** before sharing. Per-person cost lines, the Labour cost row and Margin Allocation disappear; related staff-cost amounts and margins show **-.-**. Supplier Cost lines, invoicing and hours stay visible.
{% endstep %}

{% step %}
Choose **Show cost figures** to restore them. This is the same browser preference as the single-Job Recon eye: hiding costs on one also hides them on the other. Print and Excel follow it.
{% endstep %}
{% endstepper %}

## Task Reconciliation

{% hint style="warning" %}
Task Reconciliation is visible only to the [Account Owner](/company-settings/users.md) or a **Super User**, because of the potentially sensitive information it carries.
{% endhint %}

The studio side of the consolidated selection, split into **Billable** and **Non-Billable** summary rows, each expandable into the individual Jobs behind it.

| Column           | What it shows                                                                                    |
| ---------------- | ------------------------------------------------------------------------------------------------ |
| Actual/Estimated | Tracked hours against estimated Task hours                                                       |
| Resource Cost    | Tracked time costed at the stored resource rates                                                 |
| Margin           | Billable estimated Task value less resource cost; non-billable margin is minus its resource cost |
| Total Estimated  | Estimated Task value, including the internal estimate on non-billable rows                       |
| Billed Amount    | Billing supplied to Recon; non-billable rows are not a client charge                             |

{% hint style="warning" %}
Where User rates are not set appears, inspect the resource rates before relying on the margin. Current cost rates are maintained under [Users](/company-settings/users.md); existing Task assignment rates do not automatically change when a profile is edited. See [Recon](/jobs/recon.md) for the costing model and deliberate Refresh user rates steps.
{% endhint %}

## Cost Reconciliation

The procurement side shows Expense, Markup, Total Estimated resell value and Billed Amount, expandable into the individual Jobs. Expense is the recorded Cost-line amount, rather than confirmation of a supplier payment.

## Meetings Reconciliation

Total Hrs shows meeting duration and Combined Hours counts attendee hours, with Job breakdowns beneath the summary. The Account Owner / Super User can also see the meeting Value at resource rates when staff costs are shown. Finance and Admin do not receive that Value column.

## Job Recon

The Job Recon summary combines the chosen Jobs. Read its **Total Estimated / Total Billed** label first. Staff-cost totals, Gross Margin and Nett Margin are available to the Account Owner / Super User; Finance and Admin see the available billing summary without those staff-cost figures. When visible, the measures mean:

* Total Costs & Expenses — resource cost plus recorded supplier expense across the selection.
* Total Estimated / Total Billed — estimated billable value is used while it exceeds billable Task and Cost billing; otherwise the summary uses Total Billed.
* Gross Margin — the displayed income basis less Total Costs & Expenses, as an amount and percentage.
* Nett Margin — Gross Margin less meeting cost.

{% hint style="info" %}
Consolidated does not always mean billed-based. Like an individual Recon, this summary can use estimated value when the selection’s estimate exceeds billing. Costs are those recorded so far, so remaining time can reduce an estimated margin. Closing a Job does not itself choose the basis; Billed is invoicing, rather than payment received.
{% endhint %}

### Amounts in home currency

The report combines all selected Jobs in the account’s home currency, including the per-Job rows beneath each total. Check Amounts in the header. There is no currency switch or editable exchange-rate field here, because the Jobs may use several currencies.

Foreign-currency values use the conversion rate supplied with each Job’s Recon. A missing usable rate can leave a 1:1 conversion, so verify unusual results before relying on them. A rate you temporarily edit on one Job’s Recon does not change this consolidated report.

## Margin Allocation

For the Account Owner / Super User, the Margin Allocation doughnut uses billable Task Costs, Task Margin, Cost Expense and Cost Markup across the selected Jobs. These components split billable estimated value, rather than nett profit. Meetings and non-billable work are outside the slices. A negative component draws as zero, but its tooltip and Excel row retain the negative amount; read the centre Nett Margin separately.

{% hint style="info" %}
**Great for** seeing what a service line is really made of. Two categories returning the same margin percentage can be entirely different businesses: one earning it on studio hours, the other on marked-up production. They carry different risk, need different people, and should be quoted differently.
{% endhint %}

## Print or save Multi-Job Recon as a PDF

{% stepper %}
{% step %}

### Prepare the report

Generate the selected Jobs and check the scope, Job count, home currency and Estimated / Billed basis.
{% endstep %}

{% step %}

### Choose Print

Choose the printer icon at the top right of the report. It becomes available once the report has loaded successfully.
{% endstep %}

{% step %}

### Check the complete preview

The print opens all available person, Task, Cost and Meetings Job breakdowns, even if they were collapsed on screen. It uses A4 portrait over as many pages as needed, with the agency name, scope, Job count, currency and printed date.
{% endstep %}

{% step %}

### Print or save

Choose a printer or Save as PDF in the browser’s dialog. Check all pages before saving. After printing or cancelling, the screen returns to its previous expanded/collapsed state.
{% endstep %}
{% endstepper %}

Print includes the sections and cost-visibility choice shown on screen. Finance and Admin do not receive Task Reconciliation, Margin Allocation, Time Variance Value, meeting Value or staff-cost totals and margins. For the Account Owner / Super User, hiding costs with the eye also hides those costs on the printout. Review the copy before sharing.

{% hint style="info" %}
**Great for** a quarterly client review inside the agency. Print the selected campaign and retainer Jobs with their breakdowns so Finance and the studio can discuss the same evidence. Use a saved PDF when you need a dated copy; a bookmarked link reloads current figures.
{% endhint %}

## Export Multi-Job Recon to Excel

{% stepper %}
{% step %}

### Check the scope

Generate the report for the Jobs you intend to compare. Check the Job count and Amounts in home currency.
{% endstep %}

{% step %}

### Choose Export

Choose the download icon beside Print, labelled Export report to Excel, to download the .xlsx workbook.
{% endstep %}

{% step %}

### Read the sections

The file contains scope and generation details, Insights, the available User Time Recon, Cost and Meetings sections, and the Job Recon summary. Person and reconciliation Job breakdowns are included even when collapsed on screen.
{% endstep %}

{% step %}

### Check access and cell formats

Task Reconciliation and Margin Allocation are included only for the Account Owner / Super User. Many values are formatted amounts or hours in this workbook; check Excel’s cell types before adding formulas. Unlike the individual Job export’s decimal-hour columns, an hours label such as 1:30 means one hour and thirty minutes.
{% endstep %}
{% endstepper %}

Excel follows the staff-cost eye and your role. With costs hidden, per-person Labour Cost columns and the Labour Cost and Margin Allocation sections are left out; other hidden values stay **-.-**. Finance and Admin receive no staff-cost money columns or margins. The workbook uses the shared Agencydesk formatting and names Jobs by their number and title.


---

# 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://help.agencydesk.io/admin/reports/multi-job-recon.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.
