SDI Lab / BI cockpit Demo on a made-up Swiss insurance-lead business, data as of 28.10.2026 18:00. Names, brokers and numbers are invented.

Revenue (Finance)

CHF 45'195

▼ −8% vs August (CHF 48'895) · by invoice date

Trend * October 2026 so far: the data runs to 28.10.2026 18:00, so it is not a full month.

As a table
CantonRevenueRows
ZHCHF 11'580Rows →
BECHF 5'195Rows →
VDCHF 5'170Rows →
FRCHF 5'015Rows →
AGCHF 3'960Rows →
BSCHF 3'615Rows →
LUCHF 3'395Rows →
SGCHF 3'180Rows →
TICHF 2'350Rows →
GECHF 1'735Rows →
How it's calculated

The amount billed to brokers in CHF, counted on the invoice day. Owner: Finance.

Definition in metrics/leads.yml

name: revenue_finance
label: Revenue
noun: invoiced leads
description: The amount billed to brokers in CHF, counted on the invoice day.
measure: revenue_chf
time_basis: invoiced_at
owner: finance
certified: true

The number

select coalesce(sum(invoice_amount_chf), 0) as value
from leads
where invoiced_at >= timestamp '2026-09-01 00:00:00' at time zone 'Europe/Zurich'
  and invoiced_at < timestamp '2026-10-01 00:00:00' at time zone 'Europe/Zurich'

The trend

select to_char(invoiced_at at time zone 'Europe/Zurich', 'YYYY-MM') as period,
       coalesce(sum(invoice_amount_chf), 0) as value
from leads
where invoiced_at >= timestamp '2026-04-01 00:00:00' at time zone 'Europe/Zurich'
  and invoiced_at < timestamp '2026-11-01 00:00:00' at time zone 'Europe/Zurich'
group by 1
order by 1

The breakdown by canton

select canton as label,
       coalesce(sum(invoice_amount_chf), 0) as value
from leads
where invoiced_at >= timestamp '2026-09-01 00:00:00' at time zone 'Europe/Zurich'
  and invoiced_at < timestamp '2026-10-01 00:00:00' at time zone 'Europe/Zurich'
group by 1
order by 2 desc, 1
limit 50

The app runs these queries with parameters; here the values are written in, so they can be read or pasted into psql.