Operated by Perco Ltd · 71–75 Shelton Street, Covent Garden, London, WC2H 9JQ, United Kingdom · Orders & product help: hello@gettidycents.com · Partnerships & business: inf@perco.world

How it works

Enter your numbers once. Test every decision against them.

Stress-test your cash, customers, costs and next big decision against your real numbers. No AI guesses. Every result shows its working.

  1. One business profile

    Cash, reserve, sales, margin, costs, payroll, debt, customers and open invoices — typed in 7 minutes or imported from a bank statement.

  2. Nine exact tests

    A day-by-day cash simulation runs every scenario on the same numbers: survival, shocks, dependency, delays, deals and decisions.

  3. One action plan

    Now, Next, Monitor — each step with a date and an amount. The plan is re-simulated to check that it closes the gap.

Why the numbers can be trusted

Every formula visible. Every assumption named. Every result reproducible.

Exact money

Amounts are whole cents in 64-bit-plus integers — never floating point. Rounding happens once, by a stated rule.

Tested engine

The engine is covered by golden-vector, boundary, metamorphic and property tests. The engine version is printed on every report.

Private by design

Calculations run on your device. Sync is optional and end-to-end encrypted with a passphrase only you know.

Honest limits

We check your financial circuit — cash, costs, customers, terms. Not legal, HR, cyber or marketing risk. Missing data means “Incomplete”, never a guess.

Calculation registry · engine 1.10.4

When the decision matters, don't accept a black-box answer.

F-GP v1.1 — Gross profit = monthly revenue × gross margin % + (revenue − cost of signed projects and one-off income marked as revenue recognised in the next 12 months) ÷ 12
F-OBL v1.0 — Monthly obligations = fixed costs + payroll + debt service + owner draw + tax set-aside (each converted to a monthly equivalent by its schedule: weekly ×52/12, bi-weekly ×26/12, semi-monthly ×2, quarterly ÷3, annual ÷12)
F-BE v1.1 — Break-even revenue = monthly obligations ÷ gross margin % (with projects / deal income: the blended margin of all revenue recognised in the next 12 months)
F-MOS v1.0 — Margin of safety = (revenue − break-even revenue) ÷ revenue
F-COVER v1.0 — Months covered = cash ÷ monthly obligations
F-SIM v1.3 — Balance(d) = Balance(d−1) + inflows(d) − outflows(d), day by day over the whole horizon (12 months by default). Sales accrue daily (month total split by cumulative floor, exact); collected up-front share on the day, the rest after customer terms + average lateness; variable costs paid after supplier days; scheduled costs on their dates; known invoices, bills and one-offs on their dates (an item dated before today is history and never moves into the horizon); an invoice already overdue (or a project milestone or retention release dated before today) is paid on max(due + lateness, today + 14); money owed from before today = the owner's stated "not listed" amount spread evenly, otherwise the steady-state pool of each customer stream without a listed (not yet overdue) invoice — never pool minus listed. Own cash = the same path without the credit line the simulation would draw by itself.
F-HELD v1.1 — Usable cash = bank balance − held money with no payment date (released on the date it is earned) − held money due after the horizon (reserved, never paid again inside a longer run); held money with a due date or schedule inside the horizon is an outflow on those dates; operating cash = bank − all held money
F-MIN v1.2 — Low point = minimum Balance(d) over the whole horizon; Survival status and breakpoint = first d with Balance(d) < reserve (or < 0); the decision-window low is shown next to it; headroom = low − reserve. With a credit line the simulation draws by itself, the own-cash breach (without the line) is reported as well and is what the Action Plan names
F-RUNWAY v1.0 — Runway = days until the simulated balance first falls below zero
F-RUNWAY-S v1.0 — Simple runway (days) = cash × 365 ÷ (monthly net outflow × 12)
F-SEARCH v1.1 — Tolerances are found by exact bisection on integers (basis points, days or whole currency units) over the monotone rule "own-cash low point over the whole horizon ≥ reserve"
F-SHOCK-REV v1.2 — Revenue shock: new sales, signed projects and deal income × (1 − drop) from today; tolerance = largest drop keeping the low point over the whole horizon ≥ reserve on own cash, without automatic credit draws (a reserve kept only by borrowing is TIGHT at best); below the reserve without any drop: FAIL
F-SHOCK-COST v1.2 — Cost shock: fixed costs, payroll, the variable cost ratio and project costs × (1 + rise) from today (a profit tax deducts the new level only for the days from today); tolerance = largest rise keeping the low point over the whole horizon ≥ reserve on own cash, without automatic credit draws; below the reserve without any rise: FAIL
F-SENS v1.0 — Exposure of a cost line = low point now − low point with that line +10 %
F-LIQ-SHARE v1.1 — Liquidity-risk share of a customer = (drop in the own-cash low point if lost, open invoices and project bills unpaid) ÷ Σ drops for all listed customers; a customer whose loss does not lower the low point has 0 %
F-PAYROLL-CTRL v1.2 — A customer controls payroll if losing them lowers the own-cash low point AND adds a breach: a payroll day in the whole horizon (wages paid out of the variable cost: any day) on which the balance is below zero after the loss but at or above zero without it; while own cash goes below zero without any loss, no customer is named (FAIL as such: Cash Survival's breach, not a customer's)
F-DELAY v1.2 — Payment delay: every collection, open invoice, project bill and deal + N days (prepaid money already in the bank is not delayed), followed over the whole horizon + N days on own cash, without automatic credit draws; only a breach the delay adds counts (a day on which the undelayed path holds the reserve); tolerance = largest such N, 0 when own cash is below the reserve without any delay; card / platform payouts: a payout hold (no terms, no deposit)
F-DEPOSIT v1.0 — Deposit that keeps the reserve = smallest up-front share keeping low point ≥ reserve
F-DEFER v1.0 — Cost of waiting = amount outstanding × cost of capital × days ÷ 365 (simple interest)
F-CASHEQ v1.0 — Cash-equivalent price = price − cost of waiting
F-FLOOR v1.0 — Deal floor = direct cost + cost of carrying that cost until paid
F-PFLOOR v1.1 — Price floor = (variable cost + fixed ÷ units + carry) ÷ (1 − target margin), rounded up to the currency step
F-DECISION v1.2 — A decision is expressed as dated cash flows on the same simulation (custom: its flows, a one-off cost, a monthly cost, new sales, a downtime, a slipping closing; loans repaid from one period after the money arrives; running costs in the profit tax); judged on own cash over the whole horizon; its safe size is solved by bisection; no size → not run
F-AMORT v1.0 — Level payment = P × r(1+r)^n ÷ ((1+r)^n − 1), r = APR ÷ 12; last payment absorbs rounding
F-IRR v1.1 — True APR = periodic IRR of (net amount received, −payments) × periods per year; fees included
F-EAR v1.0 — Effective annual rate = (1 + periodic IRR)^(periods per year) − 1
F-EARLY v1.0 — Early-payment return = d ÷ (1 − d) × 365 ÷ (net days − discount days)
F-PLAN v1.2 — Plan = levers in fixed order (collect overdue → cut marked costs → reduce owner draw → deposits → credit line), each at the smallest intensity found by bisection, re-simulated on own cash over the whole horizon after every step; a lever with no effect at its turn is retried once after the later steps (effects do not add). Status = worst of the plan (PASS: nothing to change; TIGHT: the steps close the gap; FAIL: a gap is left) and the open as-is tests (Foundation, Revenue, Cost, Customer, Payment Delay); the gap left is the first action after the steps
F-RSI v1.2 — Resilience index = survival 25 + revenue tolerance (0–30 % → 0–20) + cost tolerance (0–25 % → 0–15) + concentration (50 %→0 … 0 %→15) + delay tolerance (0–45 days → 0–15; 0 when own cash is below the reserve without any delay) + margin of safety (0–30 % → 0–10); a part whose test is NOT_APPLICABLE is left out and the sum rescaled: ⌊sum × 100 ÷ remaining weights⌋
F-13W v1.1 — 13-week forecast = weekly sums of the daily own-cash simulation from the as-of date (no automatic credit draws; the lowest balance with the line is reported next to it)
F-CCC v1.0 — Cash conversion cycle = DSO + DIO − DPO; DSO weighted by customer share and reduced by the up-front share
F-WC v1.0 — Working capital tied up = daily sales × DSO + daily cost × DIO − daily cost × DPO
F-GROWTH v1.1 — Growth gap = reserve − own-cash low point over the growth window (months × 30 days) when revenue compounds by g per month
F-PRICE v1.0 — Volume you can lose after a price rise x and still earn the same gross profit = x ÷ (margin + x)
F-CONTRIB v1.0 — Line contribution = (price − variable cost) × units − direct fixed costs
F-PATH v1.0 — Sales of a month listed on the revenue path = the stated amount (replaces monthly × seasonality × growth); scenario shocks apply on top
F-WEEKDAY v1.0 — Day d of a month gets ⌊M × W(≤d) ÷ W(month)⌋ − ⌊M × W(<d) ÷ W(month)⌋ of the month total M, W = weekday weights; the month total is unchanged
F-STREAMS v1.0 — Revenue = Σ streams; margin and up-front share weighted by stream revenue, collection days by the part not paid up front (each rounded once); every stream simulated on its own terms
F-VARCOST v1.0 — Component = sales × share (net components: sales after returns-type components) × cost factor, paid lag days after the sale; supplier part = sales × (1 − margin) × cost factor − components
F-CAP v1.1 — Daily sales ≤ capacity (per month: units × revenue per unit split over the month like sales; per day: the same every day, so a month holds days × daily capacity), compared in units at today's prices; new sales fill only the capacity left
F-CREDIT-LINE v1.2 — Credit line drawn by the simulation: drawn when cash would end below keep-above (default: the reserve), repaid above repay-when-above; interest = Σ daily drawn balance × APR ÷ 365, paid monthly — also on what is drawn on a line drawn by hand, and on the path "without the line". Every verdict is judged on that path without the automatic draws (own cash); the path with the line is reported next to it
F-EXACT-MONTH v1.0 — A scaled daily amount (sales after a drop or a price step, the variable cost, its components) = f(month-to-date total) − f(month-to-date total before that day): the days of a calendar month add up to the month scaled once
F-TAX v1.1 — Tax set-aside per period: % of revenue (sales + projects recognised + deal / one-off income marked as revenue, a deal on delivery) or % of profit (that revenue − its variable and direct costs − fixed costs and payroll per day, at today’s level before today and the scenario’s level from today)
F-PAYRUN v1.0 — A monthly wage bill M paid weekly / every two weeks: run k gets ⌊12M(k+1)/N⌋ − ⌊12Mk/N⌋ (N = 52 or 26), so any N consecutive runs add up to 12M exactly
F-SEASON v1.1 — Set-aside for a month = reserve − that month’s own-cash simulated low point (if positive)
F-CHASE v1.1 — Chase priority = drop in the own-cash low point over the whole horizon if that invoice arrives 30 days later
F-FX v1.1 — FX shock = foreign-currency share of sales × adverse move; judged on the own-cash low point over the whole horizon
F-CUST-SHARE v1.0 — Customer share = incoming payments from that payer ÷ all incoming sales payments over the last 180 days (loans, refunds, interest, tax and own transfers excluded); payers under 5 % are combined into “all others”
F-HEAT v1.1 — Heatmap cell = own-cash low point over the whole horizon of the full simulation with sales × (1 − drop) and every customer and open invoice paid N days later
F-FLOW v1.0 — Monthly flow = sum of every dated simulation movement in the month by kind; opening + inflows − outflows = closing
F-RECUR v1.0 — Recurring charge = same normalised payee, ≥ 3 charges, ≥ 70 % of consecutive amounts within ±10 %, intervals 6–8 / 13–16 / 27–33 / 88–95 / 360–370 days

Decision support, not financial, tax or legal advice. Results follow only from the numbers you enter and the assumptions stated for each calculation.

Your business model gets smarter with every decision.

Open demo: every section, no sign-up, no card. Full X-Ray on your numbers from $40 a month.

Open the demo — every section