← Back to case studies
Case study — CRM turnaround Delivered

Inherited the team's bottleneck. Made it the tool they rely on.

3Motion Belgium, a print house producing marketing materials for B2B clients — every order a different spec, every client a long printed history. The CRM holding it all had become slow and unusable. I took it over mid-flight and rebuilt it into the system the team runs its day on.

  • 15+ scattered tables collapsed into one customer timeline.

  • 5+ isolated logs merged into that same timeline.

  • Automatic ERP sync — no more manual re-typing.

The problem

I took over the CRM the print house ran its orders through — it was supposed to help, instead it was the bottleneck. Reporting didn't work, so nobody could say which clients were actually worth the press time, and the task system was too unusable for anyone to touch.

Underneath, the database had grown over years into an unoptimized sprawl: client and order data scattered across 15+ legacy tables, every interaction type in its own isolated log, a separate ERP re-keyed by hand to stay aligned. Answering "what did we print for this client, and what did we charge" meant opening several places and hoping they agreed.

What I built

Rebuilt on a clean schema: UUID primary keys with JSONB columns for the parts that genuinely vary between print jobs — flexible without losing referential integrity. The 15+ tables and 5+ scattered logs collapsed into one client timeline: every order, quote and conversation in one place, in order.

Reporting that actually runs, so the team can see which clients and which work pay off. A task system they use instead of avoid. ERP sync is automatic through a dual-key match (relation number + ERP id), with GDPR unsubscribe handling built into the data layer. The tool went from daily friction to daily driver.

Stack

Retool · Postgres · JSONB · UUID · ERP sync · GDPR

Book a free 30-min call