
AI Summary
The BBC engineering team documented moving parts of its site away from iframes toward server composed components. The lesson for SEO is that iframes fragment a page into separate documents, which weakens content association, hurts layout stability, and complicates accessibility, while inlined components give crawlers a single coherent document to index.
- Iframes load a separate document, so their content is not part of the host page in a reliable way.
- Server composed components render into one HTML document that is fully indexable.
- Iframes commonly cause layout shift, slower paint, and accessibility gaps.
- If a third party embed is unavoidable, use a facade pattern and lazy load it.

This SEO case study documents a successful optimization initiative, providing actionable insights for practitioners. The documented approach demonstrates how strategic SEO implementation drives measurable results.
Initial Situation
Understanding the starting point is essential context for evaluating any case study. This documentation covers the initial challenges, competitive position, and business objectives that shaped the SEO strategy.
Strategy and Approach
The strategic approach combined multiple SEO disciplines to address identified opportunities. Key decisions around prioritization and resource allocation provide a template for similar initiatives.
Implementation
Moving from strategy to execution required specific technical implementations, content development, and process changes. This case study documents the practical steps that translated strategy into action.
Results and Learnings
The outcomes demonstrate effectiveness through measurable improvements in rankings, traffic, and business metrics. Analysis of successes and challenges provides learning value for practitioners.
Case studies like this contribute to the SEO knowledge base, helping practitioners learn from documented real-world experiences.
Source: https://medium.com/bbc-product-technology/goodbye-iframes-6c84a651e137
Why iframes work against discovery
An iframe embeds a separate document inside your page. To a browser that is convenient, but to a search engine it creates ambiguity. Google may associate iframed content with the parent page in some cases, but the behaviour is not guaranteed, and content you actually want indexed as part of the page can end up loosely connected or attributed to the framed URL instead. When the important content of a page lives inside frames, you are trusting a fragile association rather than serving one clear document.
The costs beyond crawling
Iframes also carry user experience costs that feed into ranking systems indirectly. They frequently trigger layout shift as the framed content loads at an unpredictable size, they add extra network and rendering work that slows the paint of the main content, and they often ship without the semantic structure and focus handling that assistive technology needs. A framed widget can also create orphaned or duplicate URLs that Google discovers and crawls on their own. This is the same discovery hygiene theme as managing crawl budget.
What to use instead
The durable pattern is server composition. Render the component into the same HTML document on the server so the markup arrives as one tree. Where the content comes from another internal service, compose it server side rather than framing it. Where you must embed a genuine third party, such as a video player or a map, use a facade: show a lightweight placeholder first, then load the heavy embed on interaction, and add loading="lazy" to any iframe that remains. That keeps the main content fast and indexable while still supporting the embed.
A practical migration order
Inventory every iframe, label each as internal content or third party embed, and move internal content into server composed components first because that is where the indexing and performance wins are largest. For the remaining third party embeds, apply the facade and lazy load approach. Verify the result with the URL Inspection tool in Search Console to confirm the rendered HTML now contains the content directly. The broader rendering theme connects to how Googlebot fetches and revalidates resources.
Iframe embed versus server composed component
| Aspect | Iframe embed | Server composed component |
|---|---|---|
| Document model | Separate nested document | One unified document |
| Indexability | Uncertain association | First class and reliable |
| Layout stability | Prone to shift | Controlled by your CSS |
| Accessibility | Often weak focus and semantics | Full control of markup |
What has changed since this case study
Core Web Vitals made the cost of iframes more concrete. Cumulative Layout Shift penalizes the jumpiness that framed content often causes, and in March 2024 Interaction to Next Paint replaced First Input Delay as the responsiveness metric, which rewards pages that avoid heavy embedded scripts blocking the main thread. Browsers now support loading="lazy" on iframes, so unavoidable embeds can defer until needed. The overall direction of travel favours exactly what the BBC described: fewer nested documents, more content composed into a single fast page.
Related on SEO ProCheck
Frequently asked questions
Can Google index content inside an iframe?
Sometimes. Google can associate iframed content with the parent page, but it is not guaranteed and the content may be attributed to the framed URL instead. For content you need indexed, render it in the main document rather than in a frame.
Are iframes bad for Core Web Vitals?
They can be. Iframes often cause layout shift as they load and add rendering work that delays the main content. Reserving space for them and lazy loading helps, but inlining the content is the stronger fix.
What should replace an iframe?
For internal content, compose the component into the same HTML document on the server. For genuine third party embeds like video or maps, use a facade placeholder that loads the embed on interaction.
Does the lazy loading attribute help iframes?
Yes. Adding a lazy loading attribute defers offscreen iframes until the user scrolls near them, which reduces initial load cost. It does not fix the indexing association problem, so use it only for embeds you do not need indexed.
Why did the BBC move away from iframes?
Their engineering team wanted a single coherent document that is faster, more accessible, and easier to compose, rather than stitching pages together from many nested framed documents.
Do iframes create duplicate URLs?
They can. The framed source is itself a URL that Google may discover and crawl independently, which can create orphaned or duplicate pages that dilute crawl focus.
Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.
About SEO ProCheck
Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.
Work With Me
Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.







