MoneyHero Group · live · 2024–2025

One system, four brands

One tokenised system across four brands, then the same discipline for campaign pages that used to mean a design ticket and a HubSpot workaround per launch.

Design and systems, form-three

What changed

  • 10CMS blocks now running every brand's campaigns
  • 15–20%faster campaign turnaround, target was 50%

The constraintThe platform needed one tokenised system across four brands and three languages, and campaign pages needed the same discipline without a designer sitting on every launch.

SingSaver credit card listing assembled from the shared system

The challenge

MoneyHero Group was already performing. SingSaver, MoneyHero, Money101, and MoneyMax reached 4.2 million people a month, with real traffic from paid and organic channels. The room for growth was the decision: making it easier to apply for a credit card, a loan, or an insurance plan.

The brief that actually landed on my desk was two problems wearing one name. First, the platform itself: four brands, each grown up with its own team and its own design system, needed one shared, tokenised system without losing what made each of them work in its own market. Second, and where I spent most of my time, campaign pages. MoneyHero Group runs a constant stream of them, and for years each one had been hand built in HubSpot, one workaround stacked on the last one’s. A layout solved for a SingSaver campaign in Singapore had no way to reach a MoneyHero campaign in Hong Kong. Whoever built the next one started from a different set of hacks, because there was no shared system, just four separate histories of getting a page out the door.

I was embedded from form-three, on design and systems.

What we did

  • Sat between MoneyHero’s business stakeholders and the third-party team building the platform, gathering requirements and reviewing every design before it went to development
  • Built a tokenised design system the four brands could share
  • Replaced ad hoc HubSpot campaign builds with ten reusable, CMS-editable blocks
  • The wider team separately rebuilt travel insurance comparison and checkout, and the card and loan journeys, using the same system

The site revamp: sitting between the build and the business

I was not writing the platform rebuild’s code. My job was upstream and downstream of it: gathering the actual requirements from MoneyHero’s business stakeholders before the third-party build team touched anything, then reviewing every design against those requirements before it went to development. That mediation does not show up in a screenshot, but it is the reason the rebuilt platform matched what the business needed rather than what a build partner assumed it needed from a spec.

A system four brands can share

Components, type, and spacing were set once. Language set the dictionary and the fonts. Each brand kept its own colour, logo, menu, and footer. A layout could move to another market by copying the board and swapping the tokens instead of redrawing the screens.

English-language markets showed less at once and let people open more. Chinese-language markets expect more on the page, so we kept the detail and made the hierarchy hold.

SingSaver Singapore campaign listing MoneyHero Hong Kong card detail Money101 Taiwan card listing MoneyMax Philippines campaign assembled from reusable blocks

Campaigns without a designer on every launch

Before this, a campaign page meant a designer, a developer, and whatever HubSpot workaround got it shipped in time, repeated separately for every market. I made the case for standardising it: ten reusable blocks (hero, product benefits, provider logo, rewards and offers, a step-by-step “how to participate,” testimonials, FAQ, terms and conditions, a call to action, and a footer), each one editable in the CMS so a marketer could assemble and edit a campaign without a developer, or a designer, doing it by hand each time.

The target I set going in was ambitious: cut design and development time on a campaign by half, and cut turnaround from brief to publish by 30%. What actually shipped landed at 15 to 20% faster, which is the honest number, not the pitch one. What did land at target was the more important shift: a marketer could now build and edit a campaign inside the CMS from the same blocks, structured the same way, in every market, instead of a designer hand-coding a one-off in HubSpot each time. The message stayed the same. The structure and the control over it did not.

SingSaver and MoneyHero travel-insurance frames driven by the same tokens in Figma

What the team shipped alongside this

The travel insurance comparison and checkout, and the card and loan journeys, were rebuilt in the same engagement, using the same system, by the wider team rather than by me directly. End-to-end insurance purchases went as high as double, and travel insurance took roughly three-quarters less time to buy. Worth mentioning because it is the same engagement and the same tokenised system underneath it, not because it is my case study to claim.

What it moved

The durable result on my end is the system: ten blocks now run every brand’s campaigns, and a marketer can ship one without waiting on design or development. Campaign turnaround improved 15 to 20%, short of the 50% target we set out to hit, but real and shipped. The platform rebuild I helped mediate between business and build is still what MoneyHero Group runs on.