Every event, accounted for.
Basalt records every event once, in order, and keeps it queryable in milliseconds. One ledger for ingest, transforms and serving, with a line back to the source for every number.
2,400+
teams
38
regions
99.995%
SLA
Ledger · prod · eu-north-1
1,284,301
ev / s
p99
4.2
ms
Time
Event
Latency
14:02:11.482
payment.succeeded
2.1 ms
14:02:11.471
order.created
2.8 ms
14:02:11.455
session.started
1.6 ms
14:02:11.430
meter.reading
1.2 ms
14:02:11.418
invoice.paid
1.9 ms
14:02:11.402
stock.adjusted
3.1 ms
14:02:11.391
model.scored
3.6 ms
14:02:11.377
cart.updated
2.4 ms
14:02:11.360
shipment.scanned
2.0 ms
14:02:11.348
payment.refunded
2.2 ms
14:02:11.333
user.signed_up
1.7 ms
Append-only · Exactly-once · Signed
Retention 365 days
Contents
Four chapters. One system of record.
01
Every stream, in order.
60+ sources · Exactly-once
Kafka topics, Postgres CDC, webhooks and the SDK land in one replicated log. Retries and replays are deduplicated on arrival, so each event counts once.
02
Plain SQL, kept current.
Incremental views · Stream joins
Write joins, windows and aggregates as views. Basalt updates them with each new event and backfills in the background when you change a query.
03
Every table is an API.
p99 4.2 ms · 38 regions
Read views over REST, GraphQL or the Postgres wire protocol from 38 regions, with row-level security tied to your auth provider.
04
Every number has a source.
Lineage · 365-day time travel
Lineage links each row to the raw events behind it. Time travel lets you query any view as it stood at any second of the past year.
The ledger
Eight figures, kept in public.
01
p99 read
4.2
ms
From commit to query result, measured at the edge.
02
Events per day
2.1
Billion
Ingested across every customer project, every day.
03
Dropped events
0
in 24 mo
Rows lost in two years of production traffic.
04
Regions
38
Live
Edge replicas from Reykjavík to Sydney.
05
Uptime SLA
99.995
%
Backed by service credits on Scale and up.
06
Pipelines replaced
14
Median
Jobs a team retires in its first quarter.
07
To materialize
812
ms
From a new view to its first served row.
08
Median setup
9
min
From sign-up to the first live query.
Measured across all customer projects, trailing 30 days. Republished on the first of each month.
Comparison
Basalt vs the usual stack.
The same workload, set three ways. Figures are typical of the teams that moved to Basalt in the last two years.
Capability
Basalt
Realtime ledger
Warehouse + cron
Batch ELT
Stream processor
Self-run jobs
Freshness
Under 5 ms
15 min to 24 h
Seconds, when tuned
Exactly-once
End to end
Per load job
With checkpoint tuning
Joins on streams
Plain SQL
Batch only
Hand-written jobs
Time travel
Any second, 365 days
Daily snapshots
No
Schema changes
Versioned, no downtime
Manual migrations
Redeploy every job
Systems to run
1
4 to 6
3 to 5
Teams on call
None extra
Data and platform
Platform and SRE
Based on 140 migrations completed between 2024 and 2026.
“We used to close the books every Monday for the week before. Now finance reads the same ledger as the warehouse floor, live, and nobody asks which number is real.”
MA
Maren Aasland
VP Data · Fernhill Grocers
Customers
On the books at 2,400 teams.
Fernhill Grocers
Retail · Oslo
Stock counts from 40 min to 2 s
Parcelo
Commerce · Berlin
Checkout fraud down 38%
Kestrel Freight
Logistics · Rotterdam
11,000 trucks tracked live
Lattice Bank
Fintech · London
Month-end close from 2 days to 0
Saga Mutual
Insurance · Copenhagen
Claims triaged in 300 ms
Moss & Pine
Media · Toronto
Ad pacing within 1% of target
Brightwater Energy
Utilities · Aberdeen
2.4M meters read every 15 s
Vigil Security
Security · Austin
Alerts 6 s after the login
Ondine Health
Healthcare · Lyon
Bed status live across 31 wards
Tundra Games
Gaming · Helsinki
Live leaderboards for 9M players
Colophon
The specs, for the record.
Ingest
I
Sources
60+ native
Protocols
Kafka, HTTP, gRPC
CDC
Postgres, MySQL, Mongo
Delivery
Exactly-once
Ordering
Per key
Max event
1 MB
Model
II
Language
ANSI SQL
Views
Incremental
Joins
Stream and table
Windows
Tumbling, hopping, session
Schemas
Inferred, versioned
Lineage
Column level
Serve
III
APIs
REST, GraphQL, PG wire
p99 read
4.2 ms
Regions
38
Time travel
365 days
Access
RLS, OIDC, API keys
SLA
99.995%
Set in Fraunces, Inter Tight and Martian Mono. Figures measured across all 38 regions. Designed and built in Reykjavík.

