Quarry Analytics · B2B SaaS

Making a slow analytics dashboard feel instant

A focused performance engagement on a dashboard that customers described as "the loading spinner".

Role
Performance consultant
Year
2024
Duration
8 weeks
Stack
React, TypeScript, PostgreSQL, ClickHouse, Grafana
Bar chart with a rising trend line, representing improved dashboard performance

Outcomes

  • Secondsto first chart, down from tens of seconds on large accounts
  • 12slow queries rewritten or pre-aggregated
  • 1performance budget enforced in CI

Demo content: replace these figures with your own, verifiable results.

The challenge

Quarry's largest customers waited the longest, which is the opposite of what a growing SaaS business wants.

Previous attempts had focused on the front end, but nobody had measured where the time actually went.

The approach

  • Added tracing from the browser to the database so every slow request could be explained.
  • Moved heavy aggregations to ClickHouse materialised views and kept PostgreSQL for transactional data.
  • Streamed the first chart while the rest loaded, and removed two large client-side dependencies.
  • Added a performance budget to CI so the gains don't quietly erode.

The result

The dashboard loads its first chart in seconds for every account size, and the team has the tracing and budgets to keep it that way.

“Eight weeks, a clear report and a measurably faster product. Exactly what we hired for.”

— CTO, Quarry Analytics

More work

Related projects

Diagram of connected services with one highlighted node, representing the reconciliation pipeline

Ledgerline · Fintech · 2026

A reconciliation API that finance teams trust

Replaced a nightly batch job with an event-driven reconciliation service that matches bank transactions to invoices within minutes.

  • Go
  • PostgreSQL
  • Kafka
  • OpenTelemetry

Available for new projects from January 2027

Need something similar?

Tell me what you're building and where you're stuck. I'll reply within two working days with honest next steps, even if I'm not the right fit.