Case studies

Six portals, six problems, what actually changed.

We keep clients anonymous and the details specific. Sector, size and numbers are real. Names are not shown.

Food and travel experiences20+ citiesB2C

Turning 67,000 bookings into a cross-sell engine

A global culinary tour operator had four years of bookings in HubSpot and no way to see who came back, when, or where.

29%of bookings identified as repeats
Read the full storyClose

Situation

Bookings flowed into HubSpot from a custom checkout, but nothing connected one booking to the next. Marketing could not tell a first-time guest from a superfan, and abandoned checkouts were leaking with no follow-up.

What we did

  • Designed 32 booking-history fields on contacts and deals (last and previous tour, city, dates, repeat window).
  • Built the workflow that stamps every closed-won booking with the customer's prior booking, then backfilled all 67,000 historical bookings.
  • Rebuilt web behaviour tracking through GTM into HubSpot custom events and 143 dynamic lists, and fixed the checkout-abandonment capture that had silently stopped.

Result

29% of walk bookings turned out to be repeats, and 7,531 of them happened within seven days of the previous booking, mostly in a different city. That audience now drives the cross-sell nurture. Abandoned-checkout emails fire again.

Industrial IoT manufacturer7 merged companies75k contacts

Cleaning a CRM built from seven acquisitions

Seven acquired businesses, seven price lists, and a HubSpot portal where thousands of companies had no name and country data could not be trusted.

2,500+companies named from owned data
Read the full storyClose

Situation

Forecasting ran in a BI tool fed by NetSuite and HubSpot, but HubSpot company records were too dirty to roll up: nameless companies, full country names in a two-letter code field on 13,344 contacts, contacts unattached to their company.

What we did

  • Recovered company names from evidence the client already owned (contact records, domains, NetSuite exports) before spending a cent on enrichment, which we tested and rejected.
  • Standardised country data on 649 company records and repaired 13,344 contact country codes, every change logged to a reversible manifest.
  • Associated 606 orphan contacts to the company that owns their email domain and sourced 719 missing websites, each rated for confidence.

Result

Company-level reporting and deal roll-ups work again. Every write was verified live after the fact, and the client received review sheets for the records we deliberately did not touch.

Franchise networkB2B and B2CEU

An audit that found the workflows that never fired

A franchise consultancy with 18 users, 226 custom properties and a growing sense that automation was not doing what everyone assumed.

6silent automation defects found
Read the full storyClose

Situation

Deals carried flattened contact data fed by workflows, but most of it was empty. Nobody knew which of the nine pipelines was authoritative, GDPR subscription types did not exist, and six people were super admins.

What we did

  • Ran the RevTech HubSpot audit across configuration, data governance, revenue architecture and automation, reading live state through the API rather than trusting screenshots.
  • Found workflows matching on a property with a 0% fill rate, an active test workflow hardcoded to one email, and cloned workflows still writing to the wrong field.
  • Delivered a prioritised remediation roadmap, then built lifecycle-stage automation and outbound sequences on the cleaned foundation.

Result

A written map of what was broken and why, in the order to fix it, followed by a working lifecycle model and an outbound programme the sales team actually runs.

AI SaaSinsurance verticalpartner-led sales

Showing sales directors which partner can help close a deal

An AI company selling into insurers through partners like Microsoft and LexisNexis needed deal owners to see partner coverage without asking around.

1glance to see partner coverage
Read the full storyClose

Situation

Partner relationships lived in a spreadsheet. When a sales director opened a deal, nothing in HubSpot said whether a partner already had that account as a client or prospect.

What we did

  • Modelled partner coverage as company-to-company association labels, maintained by the partner manager in the HubSpot UI, so the source of truth stays where people work.
  • Built a custom-coded deal workflow that reads the labels off the deal's company and writes a coloured relationship tag plus the partner names onto the deal.
  • Reconciled and imported the partner account list, flagging duplicates and ambiguous matches for the client instead of guessing.

Result

Every new deal now shows its partner relationship on the board, and the client owns the mechanism without touching code.

Security services groupbrokered deliverymulti-currency

From free-text proposals to governed quotes

A security services broker with an 18-stage quote-to-cash pipeline, proposals written by hand, and 1,466 stale leads clogging the lead view.

18pipeline stages, one governed flow
Read the full storyClose

Situation

Each proposal was assembled manually from a legacy template. A new SaaS line needed its own revenue architecture, and the leads object had years of abandoned records nobody dared delete.

What we did

  • Rebuilt the client proposal as a HubSpot quote template with custom cover, product table and standard terms, so quotes are generated from deal data.
  • Designed the Revenue Hub architecture for the new SaaS product line, from product library to pipeline, documented and awaiting a seat decision before build.
  • Cleaned 1,466 stale leads with client sign-off, leaving the live pipeline untouched and verified afterwards.

Result

Proposals come out of HubSpot in minutes with consistent terms. The lead view shows only leads someone is working.

Operations consultancyMEA regionoutbound sales

Installing Revenue Architecture end to end

A consultancy starting fresh on HubSpot wanted the Winning by Design framework working on day one, not a blank CRM.

3phases live, SLAs enforced
Read the full storyClose

Situation

No lifecycle model, no lead-status definitions, and an SDR team with no rules for how fast to follow up or when to give up.

What we did

  • Restructured the lifecycle stage pipeline to the Revenue Architecture stages, pre- and post-customer, with lead statuses gated on a company fit score.
  • Built SLA tracking with breach alerts and accelerated SLAs for hot leads, a nurture auto-reset and a disqualification flow.
  • Wrote the SDR GTM process guide and an AI agent configuration so the process is documented where the team works.

Result

Leads move through defined stages with response-time SLAs, and management can see where the funnel stalls without asking the team.

Want a story like this about your portal?

Every engagement above started with a 30-minute call and, in most cases, an audit.

  • 30 minutes, no slides
  • You leave with three concrete next steps
  • If we are not the right fit, we say so

Pick a time with Daniel

Discovery calls are free and go straight into the calendar.