# Kaldmere Studio OÜ: agency finance pack, model guide

FICTIONAL DEMONSTRATION. Kaldmere Studio OÜ, its clients, suppliers, staff, contracts, invoices and every number in this pack are invented by BriQs Group to show the structure, depth and controls of a monthly finance pack. Tax rules and exchange rates are real and sourced below.

## 1. What the pack is

A founder-led digital and creative agency in Tallinn, Estonia (osaühing), reporting in EUR and billing clients in the UK, US and EU in GBP, USD and EUR. About 40 people. Four revenue streams: retainers (brand and content, performance, product design and development), fixed-fee projects, time and materials, and media management. Actuals Jan-26 to Aug-26, forecast Sep-26 to Dec-27, three scenarios.

| File | What it is |
|---|---|
| Kaldmere_Studio_Agency_Finance_Pack_Aug26_FICTIONAL.xlsx | Editable workbook, 33 sheets, 41,621 formulas, recalculated with cached values (Base selected) |
| Kaldmere_Studio_Agency_Finance_Pack_Aug26_FICTIONAL_Base.json | Every monthly sheet as keyed rows plus all tables, evaluated under the Base scenario |
| Kaldmere_Studio_Agency_Finance_Pack_Aug26_FICTIONAL_Downside.json | Every monthly sheet as keyed rows plus all tables, evaluated under the Downside scenario |
| Kaldmere_Studio_Agency_Finance_Pack_Aug26_FICTIONAL_Upside.json | Every monthly sheet as keyed rows plus all tables, evaluated under the Upside scenario |
| Kaldmere_Studio_Agency_Finance_Pack_Aug26_FICTIONAL_Summary.json | Web-sized summary: scenarios, checks, budget vs actual, 13-week control, client profitability, renewals, CFO report, headline series |
| Kaldmere_Studio_Agency_Finance_Pack_Aug26_FICTIONAL_Model_Guide.md | This guide |

## 2. Validation results

Each scenario was set on Assumptions!C11, recalculated in LibreOffice and read back.

| Scenario | Formulas | Formula errors | Integrity checks passing | Overall status |
|---|---|---|---|---|
| Base | 41,621 | 0 | 34 of 34 | OK |
| Downside | 41,621 | 0 | 34 of 34 | OK |
| Upside | 41,621 | 0 | 34 of 34 | OK |

The checks prove: the balance sheet balances every month; the indirect cash flow equals a direct build of every schedule cash line every month; retained earnings roll; the opening balance sheet balances; project revenue in actual months equals % complete x contract value; hours by role equal hours booked to clients; role mixes and milestone shares sum to 100%; projects are fully invoiced by completion; net revenue by client equals the P&L; client profitability allocates exactly to EBITDA; EUR clients carry no FX; every AR and AP aging group ties to the ledger; the 13-week forecast reconciles to the December balance sheet; the scenario snapshot is current; the budget bridge and EBITDA walk reconcile; and sign checks on receivables, payables, freelancer hours, provisions, fixed assets and the loan. A final sweep found no em dashes, en dashes or unfinished text in the workbook or the JSON files.

## 3. What the numbers say (Base)

| Measure | Value |
|---|---|
| YTD Aug-26 net revenue vs budget | EUR 2,548k against EUR 2,722k; variance (6.4%) |
| YTD EBITDA vs budget | EUR 307k (12.1% of net revenue) against EUR 519k (19.1%) |
| FY2026 net revenue, EBITDA, net profit | EUR 3,938k, EUR 583k (14.8%), EUR 428k |
| FY2027 net revenue, EBITDA | EUR 4,189k, EUR 539k (12.9%) |
| Utilisation and realisation, YTD | 70.8% of productive hours; 84.8% of the rate card |
| Largest client and top five, FY2026 | Halvergate 18.7% of net revenue; top five 48.7% |
| 13-week low | EUR 374k in the week ending 02 Oct 2026 |
| Lowest forecast month-end cash | EUR 339k in Sep-26, on payroll day: EUR 11k below the EUR 350k buffer |

| Scenario (negatives in brackets) | FY2027 net revenue | FY2027 EBITDA | Lowest month-end cash |
|---|---|---|---|
| Base | EUR 4,189k | EUR 539k; margin 12.9% | EUR 339k |
| Downside | EUR 2,837k | (EUR 170k); margin (6.0%) | EUR 50k |
| Upside | EUR 4,808k | EUR 1,081k; margin 22.5% | EUR 351k |

The story: first-half project work started late and the Norbeck website overran, so net revenue is behind budget on volume, and overservicing on retainers holds realisation down. The second half recovers on two new retainers and five live projects. FY2027 depends on renewing Halvergate (the largest client) and on new work not yet won; the Downside (Halvergate leaves at renewal) is survivable only with the overdraft and a capacity cut.

## 4. How the model works

Inputs_Actuals holds the actual months and the opening balance sheet; Client_Register and Project_Register hold client terms, currencies, VAT class, retainer contracts and projects; Assumptions holds tax rates, rate card, salaries, the role mix, the timeline and the scenario drivers (selector in C11). Retainers, Projects and TM_Media run each stream in the invoice currency. Utilisation turns hours by work type into demand by role, compares it with capacity and buys the excess from freelancers. Clients consolidates each client (revenue, hours, invoicing incl. VAT, receipts, receivable, contract position) and FX translates and revalues every currency. People, Overheads, Payables, VAT, Fixed_Assets and Financing roll costs and balances. PL, BS and CF link only to schedules. BvA, Pipeline, Client_Profitability, KPIs, Scenarios, Cash_13W, the agings and CFO_Report are reporting layers.

## 5. Methods an agency CFO will look for

| Area | Treatment |
|---|---|
| Net revenue | Revenue less production bought in. Media spend rebilled at cost is not revenue (agent, IFRS 15.B34 to B37); the media management fee is. Production recharged with a mark-up is revenue gross (principal). Gross billings shown as a memo. |
| Retainers | Earned evenly each month (IFRS 15.35(a)); quarterly advance invoices are contract liabilities (IFRS 15.106). Scoped vs worked hours give overservicing hours and cost at standard. Renewal probabilities by contract and scenario; pipeline retainers win-weighted. |
| Projects | Over time (IFRS 15.35(c)), measured on hours (input method, IFRS 15.B18 to B19); milestone invoicing gives contract assets and liabilities; forecast hours on an S-curve; overruns by scenario; approved change requests in contract value. |
| Utilisation and realisation | Own billable hours / productive hours by role; freelancers above 88% of capacity; realisation = fee revenue / standard value at the rate card; standard cost rates set to recover payroll at 75% utilisation, so the recovery variance shows idle capacity in euros. |
| Client profitability | Contribution = net revenue less hours at standard cost; delivery variance allocated by hours; leadership, bonus, overheads and bad debts by net revenue; allocated net contributions add back to EBITDA (checked). Concentration: largest client and top five. |
| FX | Flows at the monthly average rate, balances at the month-end rate, revaluation to the P&L (IAS 21.23 and 21.28); receipts converted on arrival. |
| Working capital | Per-client receivables with days to collect; media platforms paid in 30 days; aging in invoice currency tied to the ledger by currency. |
| New business | Revenue split by security (in term, renewal-weighted, signed projects, pipeline, run-rate); renewal calendar with value at risk; CRM win rates; a labelled run-rate of new project wins for FY2027 sized on the FY2026 win record. |

## 6. Estonian rules applied (Known: verified 23 Sep 2026)

| Rule | Value used | Source |
|---|---|---|
| VAT standard rate | 24% from 1 July 2025 | EMTA, Standard VAT rate |
| Services to EU and non-EU business clients | Taxed where the client is established: 0% in Estonia, KMD field 3; input VAT deductible | EMTA, Place of supply of services (VAT Act s10, s15) |
| VAT return and payment | By the 20th of the following month | EMTA, Tax liabilities of companies established by e-residents |
| Excess input VAT | Offset against other tax liabilities; refund within 60 days of the application | EMTA, Calculation and refund of VAT (Taxation Act s106) |
| Media bought in own name for a client | Deemed to be received and supplied by the agency for VAT | Council Directive 2006/112/EC, Art. 28 |
| Corporate income tax | 0% on retained profit; 22/78 of the net dividend, due by the 10th of the following month; the 2% security tax was abolished in June 2025 | EMTA, Income tax and basic exemption; EY tax alert (abolition of the defence tax) |
| Payroll 2026 | Social tax 33% (minimum base EUR 886), employer UI 0.8%, employee UI 1.6%, funded pension 2%, income tax 22%, basic exemption EUR 700 a month | EMTA, Tax rates; EMTA, Unemployment insurance premiums |
| TSD declaration and payment | By the 10th of the following month | EMTA, Submission of declaration form TSD; Tax liabilities of companies |
| Annual leave | At least 28 calendar days | Tööelu portal (Employment Contracts Act) |
| Redundancy (Downside capacity cut) | One month average wage paid by the employer; notice 15 to 90 days by tenure | Eurofound legislation database, Employment Contracts Act s97 and s100 |
| Exchange rates | ECB reference rates at each month end, 31-Dec-25 to 31-Aug-26 (GBP 0.87260 to 0.85648; USD 1.1750 to 1.1596) | ECB euro foreign exchange reference rates |

## 7. Assumptions (company judgements, labelled in the workbook)

- Monthly average FX rates are the mean of the opening and closing ECB month-end rates; forecast rates hold the last month-end rate, shifted by scenario.
- Hours by role follow a fixed mix per work type (Assumptions); productive hours per FTE follow a 12-month profile with July leave.
- Standard cost rates recover payroll at 75% utilisation; freelancers take demand above 88% of each role.
- Renewal and win probabilities by contract and scenario; hires tied to pipeline work carry the same probability; the FY2027 run-rate of new project wins is EUR 240k of fees a quarter at 85% in the Base.
- All staff contribute 2% to the funded pension and use the basic exemption through this employer; pay inflation 4.5% and overhead inflation 3% from FY2027.
- Media platforms invoice in EUR monthly on 30 days; receipts are converted to EUR on arrival; no GBP or USD cash is held.
- Contract positions are netted per client; leavers are replaced like for like; the bonus (5% of gross pay with employer taxes) is paid in March.

## 8. Information needed to convert this into a client build

- Timesheet export by person, client, project and task for FY2025 and FY2026, to replace the role mix and to measure overservicing by client and role.
- Signed retainer letters and statements of work with scope hours, rate cards, renewal dates and notice periods, to replace the register terms.
- Project manager estimates to complete for every live project each month, signed off by the head of delivery.
- Media platform invoices and the client media funding terms (prepaid or credit), to measure the media float exactly.
- ECB monthly average rates and the bank conversion rates actually achieved, to split realised from unrealised FX.
- Payroll register with individual pension rates and exemption elections, and the FY2027 pay review.

## 9. Using the workbook

- Change the scenario on Assumptions!C11 (1 Base, 2 Downside, 3 Upside); every forecast month, the CFO report and the Cover move with it. The Scenarios sheet holds the three snapshots; the check turns red if the live figures stop matching the stored snapshot.
- Blue on yellow cells are inputs; black are formulas; green link other sheets. Actual data is typed only on Inputs_Actuals and the registers.
- The month-end procedure is on the Guide sheet: enter the month, move the last actual month on Assumptions, update the registers and agings, refresh the snapshots and reread Checks.

## 10. JSON structure

Each scenario file has meta (fictional flag, scenario, validation), timeline (24 month-ends with A/F flags), sheets (every monthly sheet as rows with key, label, basis, format, 24 values and FY totals) and tables (assumptions, client register, retainer contracts, project register, client profitability, concentration, pipeline, budget vs actual with bridge and EBITDA walk, scenarios, 13-week cash, checks, AR and AP agings, CFO report). Ratios are fractions (0.25 = 25%). The summary file is the one sized for a web page.
