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

# Contract Negotiation Simulator

> Rank rate opportunities against Dash.fi's customer benchmarks, then model a renegotiation scenario with probability-adjusted savings.

The **Contract Negotiation Simulator** lives under **Agents → Shipping → Audits → Contract Negotiation Simulator** in [app.dash.fi](https://app.dash.fi). It's a paired-tab surface for pressure-testing your carrier rates and modeling a renegotiation:

* **Benchmark Ranking** compares your rates against the Dash.fi customer benchmark and ranks the top opportunities.
* **Negotiation Planner** turns those opportunities into a what-if renegotiation scenario with probability-adjusted savings.

Both tabs are two lenses on the same carrier comparison. A single **UPS / FedEx** toggle at the top of the surface applies to both — switching carriers switches both tabs at once. The default carrier is whichever one you invoice the most on.

## Prerequisites

* At least one parsed UPS or FedEx invoice for the carrier you're viewing. Upload invoices under **Configure → Invoices** on any Shipping Agent tab. See the [dashboard tour](/integrations/shipping/dashboard) for the upload flow.
* **UPS carrier agreement (optional, UPS only)** — uploading your UPS contract under **Configure → Contract** lets the Negotiation Planner anchor targets to numbers already in your agreement. Without a contract, the planner still runs on a generic heuristic.

Dash.fi doesn't parse FedEx contracts today, so FedEx runs on heuristics only and doesn't get the UPS-specific surcharge strategies. This limitation is called out inline on each tab's readiness alert.

## Benchmark Ranking tab

Benchmark Ranking ranks the shipping services and surcharges where you have the most room to move, measured against Dash.fi's own customer benchmark rates.

Dash.fi rebuilds the benchmarks from every connected customer's invoice data. Each carrier + service + zone + weight combination gets three tier thresholds computed from the population of per-customer effective rates:

| Tier       | Meaning                                                                                                                   |
| ---------- | ------------------------------------------------------------------------------------------------------------------------- |
| **Gold+**  | Your effective rate is at or below the 10th percentile of the customer population — you're already beating the benchmark. |
| **Gold**   | Between the 10th and 25th percentile.                                                                                     |
| **Silver** | Between the 25th and 50th (median) percentile.                                                                            |
| **Bronze** | Above the median — the biggest gap to the benchmark.                                                                      |

### Hero stats

Three KPIs sit at the top of the tab:

* **Spend at gold+** — the percentage of your benchmarkable spend that's already at Gold+ rates.
* **Total opportunity** — annualized dollar opportunity if every ranked line moved to the Gold rate.
* **Transport vs. surcharge** — the same total, split between transport charges and surcharges.

### Rate opportunities table

Below the KPIs, a table lists the top 10 ranked opportunities (out of however many benchmarkable lines you have). Each row shows:

* **#** — rank by opportunity dollar amount.
* **Item** — the service or surcharge name, with a transport/surcharge type label.
* **Current** — your effective rate per pound or per shipment.
* **Gold** — the benchmark's Gold rate for the same unit.
* **Opportunity** — annualized savings if that line moved to the Gold rate.
* **Tier** — the tier badge for the current rate: Gold+, Gold, Silver, or Bronze.

### Date-range filter

Use the date-range picker at the top of the tab to compare rates over a specific window (for example, a single quarter or invoice period). The picker defaults to full history; click **Full History** to reset it after applying a range.

### Readiness

If the currently selected carrier doesn't have a parsed invoice yet, the tab shows a readiness alert with an **Upload invoice** action instead of the ranking. Once an invoice is parsed, the ranking appears on the next refresh. See the readiness alert notes in the [dashboard tour](/integrations/shipping/dashboard#readiness-alert) for how these prompts behave.

## Negotiation Planner tab

Negotiation Planner is a what-if renegotiation calculator. It starts from the strategies Dash.fi computes for your account and lets you sweep the target rate and the probability the carrier agrees, then reads out probability-adjusted monthly, annual, and multi-year savings.

Edits save automatically. Changes debounce for a moment before writing, then the server confirms with its own numbers. When your Dash.fi team edits the same plan (they and you share one plan per carrier), the hero card notes **Last adjusted by your Dash team on \<date>**.

### Hero card

The hero card at the top of the tab summarizes the current plan:

* **Probability-adjusted savings** — total monthly savings across enabled strategies, with each strategy's savings weighted by its own probability slider.
* **Year 1** — the monthly figure annualized against your actual invoice coverage (not a flat ×12).
* **Projected (N yr)** — Year 1 compounded by your chosen spend-growth rate over the projection window.
* **N of M strategies active** — how many strategies you've toggled on.

### Global controls

Two toggle groups at the top of the tab feed the projection math:

* **If spend grows** — apply flat, +15%/yr, or +30%/yr year-over-year compounding to the projection.
* **Project over** — 1, 2, or 3 years.

### Strategy cards

Each strategy renders as its own card. A card has three inputs:

* **Enable switch** — toggle the strategy in or out of the total. Disabled strategies show a dimmed card and contribute \$0.
* **Target** — the discount or cap you want to negotiate to. Seeded with Dash.fi's suggested goal; edit it to model a different ask.
* **Probability the carrier agrees** — a 0–100% slider (5% steps) that weights the strategy's contribution to the hero total.

Each card also shows:

* **Current** — the current value Dash.fi inferred from your invoices (surcharge discount %) or the carrier's published General Rate Increase (GRI).
* Its own **/mo** savings figure, recomputed live as you edit.
* A badge next to the title:
  * **From your contract** — the suggested goal came from a rate parsed out of your UPS agreement that isn't yet reflected in billing.
  * **Estimate** — the goal is a generic Dash.fi heuristic. Hover the badge for the exact reasoning.

Targets worse than the current value produce a legitimately negative savings number — Dash.fi doesn't clamp the math to zero, so you can see the cost of a bad ask.

### Strategy types

The walking-skeleton release ships two strategy types:

<AccordionGroup>
  <Accordion title="Surcharge discount (UPS only)">
    One card per major UPS surcharge category with enough billed spend to matter: fuel, residential, delivery area, and large package. Dash.fi infers the current effective discount from your invoice data (net vs. gross for that category) and suggests a goal discount %.

    The goal is contract-anchored when Dash.fi finds a matching accessorial discount in your parsed UPS agreement that's higher than what's actually being billed. Otherwise the goal is a category-specific heuristic (for example, 35% for fuel, 85% for residential).

    Categories with less than \$100 of monthly net spend, or already deeply discounted above 90%, are skipped — there's nothing meaningful left to ask for.

    **FedEx doesn't get surcharge strategies.** FedEx invoice data doesn't carry a clean per-charge incentive signal, so Dash.fi has no way to infer a current surcharge discount rate. Until that changes, the FedEx view of the Negotiation Planner shows only the GRI cap card.
  </Accordion>

  <Accordion title="General Rate Increase (GRI) cap">
    A single card, present for both carriers, that models capping next year's GRI pass-through. The current value is the carrier's most recently announced GRI. The goal is a flat 1% cap.

    GRI cap is always heuristic — no carrier contract carries a GRI or rate-increase term, so there's nothing to anchor against. The card always shows the **Estimate** badge.
  </Accordion>
</AccordionGroup>

More strategy types (dimensional weight, minimums, base rate discounts) are on the roadmap.

### Readiness

* **No invoices yet** — if you have no completed Shipping Agent analysis, the tab shows an empty state with a **Configure** button that opens the invoice uploader.
* **No contract on file (UPS)** — the tab still renders, but every suggested goal falls back to a heuristic. The readiness alert prompts you to upload your UPS agreement so goals can be contract-anchored.
* **FedEx** — the readiness alert notes that FedEx runs on heuristics only. There's no action to take.

## Permissions

Read-only cardholders (users without the `agent:write` permission) can view both tabs but can't edit the Negotiation Planner — toggles, targets, sliders, and the growth/projection controls are visible but don't save. Ask an administrator to make changes.
