How do I calculate run rate from monthly revenue?
The board deck wants "the run rate," and the number depends on who builds it: last month × 12 (one big deal and it's fiction), YTD × 12 ÷ months elapsed (punishes a slow January forever), or a spreadsheet SUMPRODUCT nobody can audit two weeks later. The mechanic isn't hard — roll months up, average a trailing window, annualize — it's just rebuild-by-hand every time the question is asked. The demo below runs the whole calculation on a sample revenue export: one question in, working SQL and the month-by-month run-rate table out.
The monthly_revenue.csv sample (period…) is registered as a DuckDB table in your browser — the exact engine workspaces use. SQL is always shown.
Running on the sample monthly_revenue.csv — the question is editable, and the Your own CSV tab registers your file in your browser instead.
Sample datamonthly_revenue.csv
How to calculate run rate from monthly revenue — without the manual grind
Which formula the demo uses
Revenue rolls up by month, the trailing 3-month average smooths the noise, and the annualized run rate is that monthly average × 12. The SQL shows every step — swap the 3-month window for 12-month (TTM) by editing one number.
Why not just last month × 12
A single month amplifies seasonality and one-off deals into a full-year commitment. The trailing window is the convention boards expect — and because it's SQL, not a pasted formula, next month's export regenerates it identically.
Then it becomes an artifact
In a workspace the query saves as a re-runnable artifact with a share link. Drop next month's export on it and the run rate re-computes — the number stops being a debate and becomes a pipeline.
Common questions
What is the run rate formula?
Run rate = average monthly revenue over a trailing window × 12. The demo uses the common trailing 3-month version: average of the last 3 months × 12. A trailing 12-month (TTM) version is the same template with a longer window.
Does this work on my own revenue export?
Yes — the free demo tab accepts your own CSV/XLSX, registered locally in your browser (DuckDB-WASM). Column names like period/month and revenue/sales/amount are matched automatically; nothing is uploaded.
Is it really free?
The demos are free and need no signup. A free workspace gives you 10 questions a day on files up to 10 MB; Pro is $15/mo (or $99/yr) for 100 MB files and unlimited questions.
Run this on your own export, every month
Free workspace: 10 questions/day, files up to 10 MB. Pro $15/mo ($99/yr) for 100 MB. Your files never leave your browser.
client-side by design SQL always shown
More live demos
How do I build a variance vs budget table in Excel?
Skip the SUMIFS rebuild. Drop your GL export, ask for the variance table in plain English, and get working DuckDB SQL pl…
How do I pivot headcount from an HR export?
Stop hand-filtering termination dates in Excel. Ask for the headcount pivot in plain English — active heads by departmen…
How do I merge ERP exports into my planning model?
ERP exports never match the planning model's keys. Join the GL to your dept map, re-key accounts to planning names, and …
How do I calculate burn rate and runway?
Net burn = cash out − cash in. Runway = cash balance ÷ average net burn. Run both on your bank-activity CSV in plain Eng…
How do I build a 13-week cash flow forecast?
The weekly cash walk without the workbook: drop your receipts/disbursements export, ask for the 13-week forecast, and ge…
How do I pivot expenses by department from a GL export?
Stop hand-filtering revenue rows out of the pivot. Ask for expenses by department in plain English — expense accounts on…
How do I build a rolling forecast in Excel?
A rolling forecast is actuals-to-date plus a re-cut forecast for the rest of the year — closed months lock, open months …