- L'headless commerce separa il tuo frontend (React, Vue, Astro, Next.js) dal tuo backend (Shopify, commercetools, Saleor). Il frontend è la tua applicazione, non un tema generato.
- La maggior parte dei test A/B presuppone un negozio basato su temi. Con l'headless, non c'è editor di temi, nessun template Liquid, nessun hook PHP. Il testing si integra direttamente nella tua applicazione frontend.
- Varify.io funziona su qualsiasi frontend tramite un singolo snippet JavaScript inserito nel tuo layout principale. Nessuna installazione di SDK, nessuna configurazione del bundler, nessun package specifico per framework.
- I test lato server e lato client diventano una vera scelta architetturale su headless. Questa pagina spiega come funziona ciascuno, quando scegliere quale e come appare l'integrazione nella pratica.
Il commercio headless è ora lo standard per i brand D2C mid-market ed enterprise seri. Il frontend (React, Vue, Astro, personalizzato) vive separatamente dal backend commerciale (Shopify, commercetools, Saleor, BigCommerce). Ottieni prestazioni, flessibilità di design e un'esperienza di sviluppo pulita. Ottieni anche una relazione diversa con gli strumenti di A/B testing, perché la maggior parte di essi è stata costruita assumendo che tu abbia un tema.
Questa pagina spiega la differenza architetturale tra testare su uno store basato su tema e testare su uno storefront headless, illustra come funziona l'integrazione su ogni stack principale e mostra cosa cambia quando decidi tra sperimentazione lato client e lato server. È una spiegazione, non una classifica di strumenti.
Cosa cambia quando diventi headless
Se hai mai installato uno strumento di A/B testing su un tema Shopify Liquid o un sito WooCommerce, il flusso di lavoro era semplice. Incolla un frammento nell'header del tema, salva, fatto. Questo flusso di lavoro presuppone tre cose, che scompaiono tutte nell'ecommerce headless.
Non c'è un editor di temi. Le piattaforme monolitiche forniscono un punto di integrazione noto: l'header del tema. Con headless, il tuo frontend è un'applicazione personalizzata costruita in React, Vue, Next.js, Hydrogen, o un altro framework di tua scelta. Il frammento di testing deve integrarsi nel codice della tua applicazione o caricarsi da un CDN. È una decisione che il tuo sviluppatore prende una sola volta, ma è una decisione, non un passaggio copia-e-incolla.
La pipeline di build è tua. Hydrogen costruisce con Vite. Una vetrina commercetools spesso usa Next.js. I frontend Saleor sono tipicamente Next.js o Nuxt. Ogni progetto ha il proprio bundler, grafo delle dipendenze e target di deployment. Uno strumento di testing che fornisce un singolo tag script drop-in funziona ovunque. Uno strumento che richiede installazione SDK e configurazione bundler funziona su alcuni stack e non su altri.
Il rendering avviene diversamente. Su un negozio Shopify monolitico, l'HTML viene renderizzato dai server di Shopify. JavaScript gira nel browser, e il testing client-side è la scelta ovvia. Con headless, potresti usare server-side rendering (Next.js SSR), generazione di siti statici (Hydrogen, Astro), rigenerazione incrementale, o pure client-side rendering. Ognuno di questi sposta dove dovrebbe avvenire l'assegnazione delle varianti. Questa diventa la decisione centrale per l'A/B testing headless, e la trattiamo di seguito.
Come funziona l'A/B testing su ogni major stack headless
Shopify Hydrogen
Hydrogen è il framework React di Shopify per vetrine headless, distribuito su Oxygen. Usa Remix sotto il cofano e renderizza server-side. Per l'A/B testing, hai due percorsi:
- Client-side: Carica il frammento di testing nel layout root (
root.tsx). L'assegnazione delle varianti gira nel browser dopo l'idratazione. Funziona per qualsiasi test a livello UI (hero, layout PDP, posizionamento CTA, trust badge). Questo è quello che la maggior parte dei team sceglie. - Server-side: Usa le funzioni loader di Hydrogen per recuperare le assegnazioni delle varianti dall'API del tuo strumento di testing, poi passale come props ai componenti renderizzati. Zero flicker, maggiore sforzo di implementazione.
Nota che l'app di A/B testing nativa di Shopify non funziona su Hydrogen. È costruita solo per temi Liquid.
commercetools (con qualsiasi frontend)
commercetools è un backend commerce headless. Il frontend è tipicamente Next.js, Nuxt, o personalizzato. L'approccio di testing dipende dal frontend, non da commercetools stesso. La maggior parte dei team inserisce un frammento nell'head HTML del frontend e gira client-side. Server-side è possibile chiamando l'API dello strumento di testing dalle funzioni server del tuo frontend.
Saleor
Saleor è una piattaforma commerce headless open-source con un'implementazione di riferimento storefront Next.js o React. Il backend Saleor non detta l'approccio di testing. Client-side tramite frammento in _app.tsx o layout root è il pattern standard.
BigCommerce headless
BigCommerce supporta headless tramite il suo storefront di riferimento Catalyst Next.js o qualsiasi frontend personalizzato. Stesso pattern degli altri: frammento client-side nel root Next.js, opzionalmente server-side tramite API per varianti SSR.
Next.js personalizzato, Remix, Astro, SvelteKit
Qualsiasi frontend commerce personalizzato funziona allo stesso modo. Inserisci il frammento di testing nel componente root o layout. Se hai bisogno di varianti server-side (tipicamente per pagine checkout dove il flicker è inaccettabile), chiama l'API di testing nelle tue funzioni server e passa i risultati come props.
Server-side vs client-side su headless: quando scegliere quale
Headless ti dà una vera scelta architetturale tra testing server-side e client-side. Su un negozio Shopify Liquid la domanda appena si applica. Su headless sì.
Il testing client-side funziona su ogni stack headless. Il setup richiede minuti (incolla un frammento nel layout root), l'editor visuale rimane disponibile, e i marketer possono eseguire test senza coinvolgimento dell'engineering. Gli strumenti in questa categoria includono Varify.io, VWO, AB Tasty, e Convert. Il piccolo rischio è il flicker su reti lente, che una buona implementazione anti-flicker riduce a meno di 30 millisecondi.
Il testing server-side funziona meglio su stack SSR o SSG come Hydrogen, Next.js SSR, e Astro. La decisione delle varianti avviene prima che l'HTML raggiunga il browser, quindi il flicker è zero. Il costo è lo sforzo di implementazione: ogni test richiede integrazione SDK, modifiche alla pipeline di deployment, e logica backend per instradare le varianti. Gli strumenti in questa categoria includono GrowthBook, Optimizely Full Stack, e LaunchDarkly Experimentation. Questo è il percorso giusto quando hai capacità di engineering e un test critico per il checkout o di logica backend dove il flicker è inaccettabile.
Per circa l'80% dei test A/B commerce headless, client-side è la scelta giusta. Le eccezioni sono test critici per il checkout dove il flicker conta e test di logica backend come motori di pricing o algoritmi di raccomandazione. Per quelli, setup server-side o ibridi hanno senso. Il nostro confronto client-side vs server-side ha la spiegazione completa.
Come Varify.io si integra con uno storefront headless
Tre motivi per cui Varify.io si adatta bene al commercio headless.
- Un singolo snippet, qualsiasi frontend. Un snippet JavaScript di 11,5 KB aggiunto una volta nel tuo layout principale. Funziona con React, Vue, Astro, SvelteKit, Hydrogen, Next.js e qualsiasi altra cosa che carica JavaScript in un browser. Nessuna installazione di SDK, nessuna configurazione del bundler, nessun pacchetto specifico del framework da mantenere aggiornato.
- Compatibile con SPA. Gli store headless sono tipicamente single-page application. Varify rileva i cambiamenti di route in React Router, nel routing di Next.js e nella navigazione di Hydrogen, e riapplica automaticamente le varianti sulla nuova pagina. Nessuna configurazione manuale SPA richiesta.
- Senza cookie, nessun gate di consenso. L'assegnazione delle varianti utilizza localStorage, che funziona indipendentemente dallo stato del banner di consenso e indipendentemente da Safari ITP. Questo è importante per gli store headless con alto traffico mobile e base clienti UE. Vedi A/B testing senza cookie per i dettagli dell'architettura.
L'integrazione tipica su uno storefront Next.js o Hydrogen assomiglia a questo:
// app/layout.tsx or root.tsx <script async src="https://cdn.varify.io/snippet/YOUR_ID.js" />
Questa è l'intera integrazione per la maggior parte degli storefront headless. Una volta che lo snippet è attivo, gli esperimenti vengono gestiti nel dashboard Varify e non sono necessarie ulteriori modifiche al codice per nuovi test.
Per le pagine critiche in termini di prestazioni dove il flicker è inaccettabile, Varify supporta anche la chiamata dell'API di assegnazione dal codice server-side e l'iniezione dei dati delle varianti nel render HTML iniziale. La maggior parte dei team non ne ha bisogno e il default client-side è sufficiente per la maggioranza dei test.
Un snippet. Qualsiasi frontend. A/B testing headless senza compromessi.
Varify.io funziona su Hydrogen, commercetools, Saleor, BigCommerce e qualsiasi storefront personalizzato React, Vue o Astro. Piano fisso €149/mese.
