runbookify
← All plans
Procurement & Purchasing / Spend Analytics & Budgets

Budget vs Commitment vs Actual Tracker

See the true picture of a budget before you approve more spend: budget, committed (open POs/requisitions), actuals (invoiced), and what's really left — with a human gate when remaining-available goes negative or under threshold.

IntermediateA weekendBuilds onNext.jsSupabaseResend
What you'll build

A web tool where you import budgets, open commitments, and actuals; it computes committed, actual, and remaining-available per cost center / category / period; shows a drill-down dashboard; alerts owners when a line goes over or near its limit; makes the budget owner acknowledge an over-budget line with a remediation note before the period is treated as in control; emails a scheduled budget digest; and exports a clean CSV.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.

Before you start

  • A Supabase account (free)
  • A Vercel account (free)
  • A budgets export, an open-commitments (open PO) export, and an actuals (invoiced) export — CSV is fine
  • Claude Code or any AI coding agent

The problem this kills

Your budget report says you've spent 60% of the line, so a manager asks to approve another purchase and you say yes. What the report didn't show: there are three open purchase orders and a stack of requisitions already approved and on their way. Those are committed — the money is gone, it just hasn't been invoiced yet. By the time the invoices land, the line is 20% over and everyone is surprised.

This is the gap in plain "budget vs actual." Actuals only count what's already been invoiced or paid. They miss the commitments — the open POs and requisitions that will absolutely become spend. So budget owners approve against a number that's quietly wrong, and the overspend only shows up after it's too late to stop it.

Stitching the real picture together by hand is miserable: pull the budget by cost center and period, pull the open-PO report, pull the invoiced actuals, and try to line them up when the cost-center codes and period labels don't quite match across the three systems. It's exactly the kind of reconcile-and-roll-up job a small internal tool does better than a spreadsheet — and you don't need to be a developer to build it.

What you'll build

A simple internal web tool for budget owners and their finance/procurement partners. You import three files — your budgets by cost center / category / period, an open-commitments (open PO / requisition) export, and an actuals (invoiced) export. The tool aligns the codes and periods across all three, then computes, for every budget line: how much is committed, how much is actual, and what's truly remaining-available — with a configurable rule for whether commitments reduce what's available.

A clean dashboard shows budget, committed, actual, and remaining per cost center / category / period, with drill-down into the POs and invoices behind any number. When a line's remaining goes negative or drops below your threshold, the budget owner gets an alert — and the period isn't treated as "in control" until the owner reviews the over-budget line and acknowledges it with a remediation note. A scheduled digest emails owners their position every week, and you can export the whole thing to CSV.

What's inside the Implementation Plan

The plan is a single file you paste into an AI coding agent. It opens by interviewing you about your business — how your budgets are structured, what your cost-center and category codes look like, how your periods are labeled, where commitments live, whether commitments should reduce available, your alert threshold, and your reforecast habits — and then tailors the data model, the matching logic, and every later step to your answers. This is a build shaped around how your budgets actually work, not a generic template.

From there it walks the agent through the database schema, the three CSV imports with their duplicate guards and code/period alignment, the committed/actual/remaining engine, the drill-down dashboard, the threshold alerts, the owner acknowledgement gate, the scheduled digest email, and the CSV export. Every step ends with a ready-to-copy prompt. Because the whole thing runs on CSV in and CSV out, you can build and use it this weekend even if you have no live connection to your ERP or procurement system.

The governance it includes (this is the point)

Budgets are about control, so this is built like it matters: login so only your team can use it, row-level security so you only ever see your own organization's data, and a complete audit trail of every import, alignment, alert, acknowledgement, and export — who did what, and when. Alerts don't quietly clear themselves: when a line goes over or under threshold, a human — the budget owner — has to review it and acknowledge a remediation note before the period is treated as in control. Duplicate guards on cost center + category + period (for budget lines) and on transaction / PO id (for commitments and actuals) mean the same input can't be counted twice and the same budget line can't be loaded twice.

Who it's for

Budget owners, cost-center managers, and the procurement or finance partners who support them — anyone who today only sees "budget vs actual" and keeps getting blindsided by the open commitments that were always going to land. If you can explain how your budgets are coded and how you decide a line is in trouble, you can build this.

You've got this — open the plan, paste the first prompt, and let it interview you about your budgets.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.