Skip to content
All teardowns

Teardown: what Allbirds’ storefront shows from the outside

A well-instrumented Shopify storefront carrying an unusually heavy homepage. Everything below came from a single public request — no login, no private data, no relationship with the company.

Shopify · scanned

Method: one ordinary GET request to the public homepage. We do not log in, do not touch admin or customer data, and do not execute JavaScript — so anything loaded later by a tag manager reads as absent, and we say so wherever it applies. These companies are not clients and have not asked for this. Sites change; each entry carries the date it was scanned.

What the scan returned

Platform
Shopify
HTTP status
200
Server response
569 ms
HTML delivered
659 KB
Mobile viewport
Present
Meta title
Present
Meta description
Present
JSON-LD structured data
Not detected
Meta pixel
Detected
Google Tag Manager
Detected
Review widget
Detected
Consent management
Detected

What is done well

Consent is handled properly

Observed
A consent management platform is present in the served markup.
Why it matters
Allbirds sells into the UK and EU, where setting non-essential cookies without consent is a regulatory exposure rather than a preference. A surprising number of storefronts of this size still have no consent layer at all, so this is worth noting as done right.

The measurement stack is real

Observed
Meta pixel and Google Tag Manager are both present, alongside a review widget.
Why it matters
This is a storefront where paid media can actually optimise toward purchases and where product pages have social proof to convert with. It is the baseline every store should have, and plenty do not.

The server is quick

Observed
First byte returned in 569 ms.
Why it matters
Server response is the part of performance a merchant has least direct control over on hosted platforms. There is nothing to fix here — the opportunity is in what gets sent, not how fast it starts.

Where there is room

659 KB of HTML on a single page

Observed
The homepage delivered 659 KB of HTML in one response, before images, fonts, CSS or JavaScript are counted.
Why it matters
HTML must be downloaded and parsed before anything renders, and it is on the critical path in a way that images are not. On a mid-range phone over mobile data — which is most paid social traffic — a payload this size delays the first meaningful paint measurably. For a brand buying cold traffic at scale, that delay is applied to every acquired visitor.
In fairness
Large HTML on Shopify frequently reflects inlined JSON for product and section data rather than sloppy markup, and some of it is doing useful work. The question is not whether it can be zero, but how much of it the first screen actually needs.

No JSON-LD found on the homepage

Observed
No `application/ld+json` block was present in the served homepage markup.
Why it matters
Structured data is what lets search results carry price, availability and rating. Absent it, listings fall back to a plain blue link while competitors show stars and prices — a difference in click-through that compounds across a whole catalogue.
In fairness
Homepages carry structured data far less often than product pages do, and product pages here may well be marked up correctly. This finding is specifically about the homepage we scanned, and it would be wrong to read it as a catalogue-wide gap without checking product templates.

GA4 not detected directly

Observed
No direct GA4 snippet was found in the served markup, though Google Tag Manager is present.
Why it matters
Worth verifying that analytics fires as expected, because tag manager containers are exactly where measurement quietly breaks after a theme change.
In fairness
This is almost certainly a false alarm. GA4 is routinely deployed through GTM rather than as a direct snippet, and our scan does not execute JavaScript, so a GTM-loaded tag is invisible to it by design. We flag it only because it is cheap to confirm.

The one thing we would do first

This is a well-run storefront, and most of what we would look at is already in place. The single finding worth acting on is the homepage payload: 659 KB of HTML is a lot to put in front of a first-time visitor arriving from a paid ad on a phone, and it is the kind of cost that never shows up in a campaign report because it is spent before the page is visible.

Visit Allbirds

Run the same scan on your store

This is the free diagnostic, pointed at someone else. Point it at your own storefront and you get the same read in about three minutes.

Scan my store free