Check supplier price increase claims against the real index

By General Input

A queue of every pending supplier increase request, with the real producer price index move for that spend category sitting right next to the ask.

Integrations

  • FRED (St. Louis Fed)
  • Google Sheets
  • Gmail

Type

App

Categories

  • Operations
  • Finance

Build me an app my procurement team works out of whenever a supplier asks us for a price increase. It is the place a buyer opens to check whether the increase is actually justified by input costs, to draft the pushback, and to record what we decided.

The main view is a queue of pending increase requests read from a Google Sheets tab with Get Values. Each row is one request: supplier name, spend category, the increase percentage they are claiming, the effective date they want, the contract notice window in days, and the supplier contact email. Show them as a list, most urgent effective date first, filterable by spend category and by decision status.

Next to each request, show the actual move in the matching producer price index over the same window. Resolve the spend category to a FRED series with Search Series, preferring producer price index series over consumer price index series, then pull the data with Get Series Observations and compute the percent change from the start of the window to the latest available observation. Display the claimed increase and the real index move side by side along with the gap between them, so a claimed 15 percent sitting next to a real 6 percent is obvious at a glance. Label the lookback window behind every number, for example "Producer price index, steel mill products, up 6.2 percent over the 90 days to March 2026".

Let a buyer override the auto matched series per spend category. Store the category to series mapping in a settings tab in the same spreadsheet so the choice persists across sessions, and show which series each row used with a control to change it and recompute. When the automatic match looks weak, flag it in the row rather than quietly using it.

Clicking a request opens a detail page showing the index chart over the lookback window, the justified increase (the index move) versus the ask, the contract notice window, the supplier contact, and the full decision history for that request. Put a "Build the pushback" button on this page.

The Build the pushback button kicks off a background agent inside the app. The agent recomputes the index move over the contract's notice window with Get Series Observations, writes a short data backed counter memo covering what the supplier asked for, what the index actually did over that notice window, the increase we consider justified, and a proposed counter number, saves the memo as a Gmail draft addressed to the supplier contact with Create a Draft, and writes the verdict and justified percentage back to the request's row with Update Values so the queue reflects the decision. Show the agent's progress in the app and surface the finished memo plus a link to the draft when it completes. Never send email automatically. The memo always stays a draft for a human to review.

Support three decisions per request: accept, counter, and reject. Recording a decision writes the decision, the justified percentage, the name of the person who decided, and the timestamp back to the sheet with Update Values, and moves the request out of the pending queue. Keep every decision visible on the request's detail page so the register doubles as a negotiation history we can point at the next time the same supplier comes back.

Two rules to bake in. Use producer price indexes rather than consumer price indexes for supplier input costs, because the producer index measures supplier side selling prices and leads consumer inflation, which makes it the right benchmark for business to business input costs. And default the lookback to the contract's notice window, falling back to 90 days when a row does not specify one, since 60 to 90 days written notice is the usual convention before a price change takes effect.

FRED is read only, so all state lives in Google Sheets: the request queue, the category to series overrides, and the decision log.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageWin back LiveChat visitors whose chats went unansweredLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seatsBuild audience segments from product usage and push to Loops