Skip to content

Digital media · Web and SEO

The Bubble: a custom front-end over a Substack newsletter, engineered to be found.

The home and every internal page of Spain's largest English-language newsletter, rendered server-side from its Substack content, with the structured data that search and AI answer engines read.

STACKSubstackServer-side renderingSchema.org / JSON-LDOpen GraphSitemap + robots.txtCloudflare
The Bubble, Digital media · Web and SEO
01

Problem

The Bubble is Madrid's English-language media on Spanish politics, economy and culture, with more than 50,000 subscribers. The writing lived on Substack, which is a fine place to write and a poor place to be found. A Substack publication is hard to shape, hard to rank and invisible to the structured data that Google and AI answer engines rely on. They needed a website that was theirs, that read like a media outlet rather than a newsletter, and that search could actually index.

02

Approach

We kept Substack as the writing tool and built the front-end around it. The editorial team keeps publishing where they already work; the site takes that content and renders it. That split matters: no migration, no retraining, and the newsletter and the website never fall out of sync.

03

Solution

We designed and built the whole front-end: the home page and every internal section, News, Real Estate, Weekend Guide, Sponsor, About, and the article pages. Pages are rendered server-side, so a crawler and an AI answer engine get real HTML instead of an empty shell. Every article ships with Article, Person, Organization and ImageObject structured data, Open Graph and Twitter cards, canonical URLs and a sitemap that stays in sync with the content. The whole thing runs behind Cloudflare.

04

Outcome

The Bubble now has a website that looks and behaves like the media outlet it is, on its own domain, while the team keeps writing on Substack. Every article is a fully indexable, schema-rich page that search engines and AI answer engines can read and cite, which a Substack post on its own is not.

Tell us which two systems are fighting.