launch shopify drops on schedule.
Your campaign pages. Shopify keeps checkout.
Harbor is a reference build, not client work.

the collection up close.
Lookbook, drop page, product page. They start from the collection's idea, not a theme section.
Open the Harbor storefront →
the buyer gets
- A campaign built for the collection
- Fast product photos and details
- Shopify checkout, unchanged
The storefront is yours to change. The commerce stack stays.
same-day launch days.
Your team builds the page in Storyblok and publishes it launch morning. No Liquid ticket.
Drop page
Campaign look, story, products, and variants in one place.
Collection
New pieces in a page built for the release.
Handoff
Buyers move to Shopify's cart and native checkout.
Harbor turnaround: 15 minutes from edit to published page.
see the reference store.
Harbor is modeled on a growing apparel store. Astro serves the storefront pages; Shopify keeps the commerce.
A 2sh reference build, not a client project.
See the full build →
cartShopify
checkoutShopify
inventoryShopify
campaignsStoryblok
the numbers behind the result.
These figures come from Harbor, not your store. They make the visual outcome measurable.
Initial client JavaScript
890 KB (theme + 16 apps)
0 KB (2.9 KB cart island, gz)
-100%
Mobile LCP, product page, throttled 4G
4.92s
0.78s
-84%
Lighthouse mobile score
42 / 100
99 / 100
+57 pts
Campaign drop turnaround
3–5 days (agency tickets)
15 minutes (direct in Storyblok)
same-day drops
Checkout
native Shopify, untouched
native Shopify, untouched
PCI stays where it belongs
Edge cache hit ratio
0%
99.1%
at delivery
| metric | baseline | 2sh architecture | delta |
|---|---|---|---|
| Initial client JavaScript | 890 KB (theme + 16 apps) | 0 KB (2.9 KB cart island, gz) | -100% |
| Mobile LCP, product page, throttled 4G | 4.92s | 0.78s | -84% |
| Lighthouse mobile score | 42 / 100 | 99 / 100 | +57 pts |
| Campaign drop turnaround | 3–5 days (agency tickets) | 15 minutes (direct in Storyblok) | same-day drops |
| Checkout | native Shopify, untouched | native Shopify, untouched | PCI stays where it belongs |
| Edge cache hit ratio | 0% | 99.1% | at delivery |
Harbor's figures are benchmark results for this reference build. We'll measure your store before recommending a change.
what was slow.
This is the app weight in Harbor's reference profile before the storefront moved to Astro.
(01) loyalty & rewards
popup, identify SDK, injected styles on every page
120–180 KB
(02) reviews & ratings
widget, rating renderer, badge scripts on product pages
60–90 KB
(03) upsell & cross-sell
cart-drawer offers, bundle scripts, cart mutations
70–110 KB
(04) size recommender
fit modal, sizing data, geo lookup
40–60 KB
(05) currency & locale switcher
geo lookup, price rewrite on every page
35–60 KB
(06) pixels & consent manager
12–20 tags, GTM and gtag, loaded blocking on first paint
180–260 KB
(07) the Liquid theme
theme.js, section editor, vendored libraries
380–480 KB
890 KB
measured baseline of the reference profile, before decoupling
→ 0 KB
Per-app weights are typical ranges for this profile, not your store's measurement. The ranges bracket the 890 KB total Harbor measured.
what waiting can cost.
This estimate starts from Harbor's profile. The call replaces it with your numbers.
monthly ad spend, Meta + TikTok
€8,000
traffic landing on phones
50% · €4,000
load on campaign pages, throttled 4G
4.0–5.0 s
paid visitors that leave before the page paints
30–40 points
estimated paid-click loss each month
€1,200–€1,600
€14,400–€19,200 a year, before conversion losses after the page paints
Estimate, not a measurement. The model assumes 10 points of paid traffic leave per second over a 1.0-second budget, capped at 50. We re-derive it with your actual spend, mobile share, and measured seconds. Run the check →
keep publishing after launch.
Lane Pro · €2,300 / mo
After cutover, Lane Pro covers seasonal pages, new SKUs, A/B variants, and email templates.
- Seasonal landing pages
- New SKU and collection pages
- A/B test variants
- Per-campaign pages
- Email templates
(01) the queue it covers
Lane Pro covers unlimited updates to existing pages and campaign content. Requests are handled in the order received, one at a time, within 48 to 72 hours; each change reaches production on that schedule.
requests ship one at a time · 48–72 h
(02) the boundary
The monthly fee covers edits to existing pages, content, CRO, styling, and copy. New builds, features, integrations, and app work are scoped separately, in writing.
edits in scope · new builds quoted separately
(03) the sprint that sits behind it
A storefront decoupling is its own migration sprint: Storefront API wiring, product and collection cache tags, webhook invalidation, and zero-downtime cutover. Lane Pro then covers page updates on the migrated storefront.
€15,000–€35,000 · fixed scope · 2–4 weeks
measure your store first.
Send your URL. We measure mobile load, rework the estimate with your spend, and tell you in writing whether it pays for itself. If not, you keep the measurement.