← Work

Birchgold: the morning dashboard

20+ hours a week back · birchgold.com

Birch Gold Group emblem beside an operations chart
20+Hours back / week
15 minSync interval
14Flows
6Screens
hours back / week12 weeks
Confidential. Client screens are not shown here.

Birch Gold Group runs a busy operations desk. The numbers it needed each morning lived in spreadsheets, the CRM, and inboxes, and the picture had to be rebuilt by hand every day.

Architecture

Fourteen n8n flows pull from HubSpot, Google Sheets, and a mailbox every fifteen minutes and land normalised rows in Postgres. Each flow has an owner, a retry policy, and a dead-letter table, so a failed sync is visible rather than silent.

A Next.js app reads that database and renders six screens: live work, exceptions, owners, ageing, daily totals, and a stuck list. Role-based views mean the floor, team leads, and management see different cuts of the same data.

Checks

Every sync is reconciled against row counts at the source. If a count drifts by more than a few percent, the screen shows a stale badge and Slack gets a message with the flow name and the last good run. Nothing is estimated to make a chart look complete.

What changed

About twenty hours a week of spreadsheet handoffs are gone. Everyone works from the same numbers, and stuck items surface before they become a problem.

Stack
n8nPostgresNext.jsHubSpot APIGoogle SheetsSlack