Rate drift: the right vendor at the wrong price

Off-program drift (see [The network vendor headline](/help/hq-vendors-network-hero)) is about the wrong vendor: a franchisee paying someone HQ hasn't approved. Rate drift is a different problem wit…

7 min read·Updated July 14, 2026
On this page

What rate drift is

Off-program drift (see The network vendor headline) is about the wrong vendor: a franchisee paying someone HQ hasn't approved. Rate drift is a different problem with the same vendor: HQ negotiated a price on a program, and the network is now paying more than that price in practice. Same vendor, same program, wrong number on the invoice.

This matters because a negotiated rate only holds value if it holds. A vendor can be fully on-program, fully compliant on paper, and still cost the network real money every month if the price franchisees are actually paying has crept above what HQ negotiated. Rate Drift is the row that catches that creep before it compounds across a full year.

Verinode does not renegotiate the contract or contact the vendor for you. It reads the negotiated rate HQ captured on the program, compares it against what franchisees are actually paying, and flags the gap. HQ decides whether to go back to the vendor, tighten the program's terms, or accept the variance.

Where to find it

Open Vendors from the HQ sidebar at hq.verinode.ai/vendors. Rate Drift is a row of tiles below the hero panel and the Off Program row, above Top Vendors. It sits next to Off Program deliberately: Off Program answers "is this the right vendor," Rate Drift answers "are we paying the right price for it."

What has to exist first: a captured negotiated rate

Rate Drift only evaluates vendors that are already on an active HQ vendor-approval program (see Programs) and that have a negotiated rate captured on that program's terms. Today, capturing that rate is a backend step your Verinode contact sets up on the program's approved-party record; a self-serve admin screen for entering it directly in the HQ UI is on the roadmap. Until a negotiated rate is on file for at least one approved vendor, this row has nothing to evaluate and stays quiet.

A negotiated rate carries two parts:

  • The negotiated monthly amount. The flat monthly rate HQ agreed with the vendor, in dollars. Only a flat monthly rate is read today; per-unit pricing and percent-off arrangements are not yet interpreted by this row.
  • A tolerance percentage. How much cushion above the negotiated rate is acceptable before Verinode calls it drift, to absorb normal per-region or per-job variance rather than flagging every rate that runs a few dollars over. If a program doesn't set its own tolerance, Verinode applies a default cushion. HQ can tighten or loosen this per program.

If a vendor sits on more than one active program with more than one negotiated rate, Verinode holds the network to whichever rate is strictest, the lowest of the negotiated amounts. That is a deliberate choice: it means the network is measured against the best deal HQ has on file for that vendor, not an average of several deals.

How the comparison works

For each vendor with a negotiated rate, Verinode compares the network's median monthly spend per franchisee against the negotiated rate, not the network's total spend. That distinction matters: a network total will always run past a single per-relationship rate once more than one franchisee uses the vendor, even with perfect compliance, because the total is the rate multiplied by however many franchisees pay it. The median is the one number that tells you what a typical franchisee is actually paying for that vendor, which is the only fair thing to hold up against a single negotiated price.

A vendor is flagged as drifting when its median monthly spend exceeds the negotiated rate plus its tolerance. For example, a negotiated rate of $1,000 a month with a default cushion means the threshold is met once the typical franchisee is paying more than that adjusted figure, not the instant it ticks a dollar over the base rate.

What each tile shows

Rate Drift lists up to a handful of drifting vendors, worst overage first. Each tile shows:

  • The over-percentage, in the top-left label, for example "+18% over." This is how far the network's median spend runs above the negotiated rate, expressed as a percentage of the negotiated amount: the dollar overage divided by the negotiated monthly rate. It is not a percentage of total spend, it is specifically how far over the negotiated baseline the typical franchisee has drifted.
  • The vendor name, as the tile's headline.
  • The comparison line, reading "Median [$X] vs negotiated [$Y]", for example "Median $1,180 vs negotiated $1,000." This is the same two numbers the over-percentage is built from, shown side by side so you don't have to do the math yourself.
  • The franchisee count, how many franchisees in the network use this vendor.

Click any tile to open that vendor's full drill-in page, which shows the same rate-drift figures alongside every program the vendor sits on, its qualification tier on each, and the per-franchisee spend list behind the network median.

The network-wide overage figure

Every drifting vendor's dollar overage rolls up into a single network-wide figure: the total amount the network is paying above negotiated rates, summed across every drifting vendor's median-vs-negotiated gap. Only positive overages count toward this total; a vendor that happens to be paying under its negotiated rate doesn't offset one that is paying over. This is the "how much is on the table" number, the dollar case for going back to renegotiate or enforce the existing terms.

The dependency: no negotiated rate, no drift signal

Rate Drift can only flag a vendor once HQ has captured a negotiated rate for it in program_approved_parties terms. A vendor with zero franchisee complaints and full program compliance can still show nothing here for one reason only: nobody has put a number on what the network agreed to pay. The row's usefulness scales directly with how many approved vendors have a captured rate, which is why the summary below tracks that count openly rather than hiding it behind the drift figures.

Empty states

  • No negotiated rates captured anywhere. The row reads: "Rate drift surfaces once HQ captures negotiated rates on at least one approved vendor (program_approved_parties.terms.negotiated_monthly_cents). Until then this row stays quiet." This is the starting state for every network until HQ (working with your Verinode contact) puts at least one negotiated rate on file.
  • Rates are captured, but nobody is drifting. The row reads: "Every vendor with a negotiated rate is being paid at or below the captured rate. No drift to renegotiate." This means HQ's negotiated terms are holding across every vendor that has one, a clean result worth knowing, not a lack of data.

How to use this row

  1. 1Confirm at least one vendor has a negotiated rate captured. If the row shows the "surfaces once HQ captures" empty state, the first move is getting a rate on file for your highest-spend approved vendors, not waiting for drift to appear on its own.
  2. 2Read the network-wide overage figure first. It is the dollar case for whether this is worth a renegotiation conversation this month or something to keep an eye on.
  3. 3Work the tiles worst-over first. A vendor sitting far above its negotiated rate with a large franchisee count is costing the network more per month than the same overage on a vendor only one or two franchisees use.
  4. 4Click through to the drill-in page before acting. It shows every program the vendor sits on and every franchisee's individual spend, so you can see whether the drift is spread evenly or driven by a handful of outlier relationships.
  5. 5Decide, don't assume. A rate that has drifted might mean the vendor quietly raised prices, or it might mean the negotiated terms never accounted for a service tier franchisees actually need. Either way, the row tells you where to look, not what happened.

Tip

Rate Drift and the Renegotiation Candidates row further down the page ask related but different questions. Renegotiation Candidates flags vendors where one franchisee's spend runs far above another's, a signal of inconsistent pricing across the network with no negotiated baseline required. Rate Drift specifically measures against a rate HQ actually negotiated. A vendor can appear in one row, the other, both, or neither.

Note

The tolerance percentage exists so this row doesn't flag routine variance. A vendor charging a few dollars more in one region than another, inside the cushion, is normal and won't show here. Drift means the typical franchisee is paying meaningfully more than the negotiated deal, not that every invoice matches to the penny.

The privacy boundary

Rate Drift respects the same network privacy boundary as the rest of the Vendors page: a vendor used by too few distinct franchisees is withheld from every vendor-level view, including this row, because showing its name and spend would let HQ infer, by elimination, exactly which franchisee pays it. See The network vendor headline for the full explanation of that guard. HQ never sees which specific franchisee is driving a vendor's median spend up, only the vendor-level median, the negotiated rate, and the gap between them.

Data sources

Data sources

  1. 1.Franchisee-recorded vendor relationships (monthly spend, per-franchisee median and percentile spend). Your network's franchisees.
  2. 2.Active HQ vendor-approval programs and their approved-party negotiated-rate terms. Your network's HQ team.
Was this helpful?