Expat Living
A platform migration gone wrong had Singapore's best-known expat lifestyle publisher sliding down the search rankings. We diagnosed the damage, cleared it, and rebuilt the site on a WordPress foundation that still powers expatliving.sg almost nine years later.
An SEO rescue after a failed migration, followed by a full rebuild on the Genesis Framework that Expat Living has published on daily ever since (launched December 2017, still live in 2026).
The Challenge
What we were solving
Expat Living is the publication Singapore's international community actually reads: a monthly print magazine and a daily website covering neighbourhoods, schools, homes, dining and travel, plus an events calendar, a business directory, reader competitions and a shop. In 2017 the Media Publishers Association of Singapore named it Expat Media of the Year and Lifestyle Guide of the Year, and there is a sister edition in Hong Kong.
The website was another story. The site had been moved off a legacy publishing CMS onto WordPress before we arrived, and the migration had left wreckage everywhere: thousands of old-format URLs still in circulation, an abandoned subdomain holding hundreds of pages in Google's index, redirect chains looping back on themselves, and expired events and dead directory listings being fed to Google through the sitemaps. Traffic had fallen through successive Google algorithm updates, and nobody could say exactly why.
For a publisher, that is not a technical inconvenience. Advertisers buy homepage placements, featured event slots and directory listings on the strength of the audience. When search traffic slides, the product the sales team sells gets smaller every month.
Success meant two things: find and fix whatever was dragging the site down, and give Expat Living a platform sturdy enough that a newsroom publishing every day would not break it.
Our Approach
How we tackled it
Diagnose before touching anything
We started in May 2017 with a full audit rather than a redesign pitch. A crawl of 10,000 URLs turned up the real story: redirect chains, broken internal and external links, improper indexing and duplicate pages, compounded by traffic falls that lined up with Google's Panda and Penguin updates. The most damaging finding was invisible to the eye. Google was indexing roughly 9,000 near-empty tag pages, a forgotten legacy subdomain with over 600 URLs, and a steady stream of expired events and broken directory entries. The site's genuine articles were competing for Google's attention with years of accumulated junk.
The first months were remediation: junk taxonomies noindexed and removed from Google's index, redirect loops untangled, sitemaps and robots rules rebuilt so only real content was offered for crawling, and the highest-value old URLs redirected to their proper homes.
Rebuild on a foundation built for daily publishing
With the site stabilised, we rebuilt it properly: a custom child theme on the Genesis Framework, hosted on WP Engine, launched in December 2017. The events calendar and business directory (both revenue lines, both previously held together by fragile plugin arrangements) were rebuilt into the theme itself.
The design decisions came from how Expat Living makes money. The homepage guarantees advertisers a set period of visibility, so story slots were built to honour those contracts rather than fight them. Paid key events get their own showcase. Competitions carry expiry timers. Video stories are flagged so readers can spot them from the category pages. This is a site shaped around an editorial team and a sales team, not a template.
Finish the cleanup the original migration skipped
A migration is only done when the old URLs are dealt with, so after launch we normalised the URL structure at scale: whole legacy path patterns rewritten across hundreds of posts at a time, each with redirects behind it, category metadata carried over, and around 1,100 empty tag archives deleted. Unglamorous work, and exactly the work the failed migration had skipped.
The Solution
What we delivered
The clearest measure of this project is that it never needed doing again. Expat Living is still publishing daily on the Chillybin build as of September 2026, with the same events calendar, magazine and reader competitions running on top of it. In an industry where publishers replatform every few years (usually after the previous build collapses under its own content), nearly a decade of daily publishing on one foundation is the outcome.
The rescue also gave the editorial team something they had lost: a site where publishing a story, an event or a directory listing did not quietly create SEO debt. Clean URLs, controlled indexing and sitemaps that tell Google the truth are still doing their job nine years on.
What we learned
Migrations fail in the long tail. A publisher's value is not its homepage; it is the thousands of older articles that still pull search traffic years later. The failed migration had preserved the site's appearance and lost its history. Most of our rescue work was giving Google a clean map back to content that had been there all along.
Publishers have an index hygiene problem most businesses never face. Every tag, expired event and lapsed directory listing becomes a page, and left unmanaged those pages outnumber the real ones. Curating what Google is allowed to see did more for this site than any single fix.
And the order of operations matters: stabilise first, rebuild second. Launching the new theme onto a cleaned-up site meant the rebuild started from solid ground, instead of importing five years of accumulated errors into a fresh design.