Migração Shopify para Headless: Guia Next.js, Hydrogen & Remix
Sua loja Shopify processa pedidos normalmente — até você assistir uma gravação de sessão. O checkout carrega em 4.2 segundos. Sua página de produto não consegue fazer A/B test de bundles dinâmicos sem um app que custa $299/mês. A conversão mobile fica em torno de 1.8% enquanto seu orçamento de social pago sobe. Migrei 14 lojas Shopify para headless nos últimos três anos: sete com Next.js, quatro em Hydrogen, três em Remix. Algumas migrações foram lançadas em seis semanas sem perda de receita. Outras consumiram $40K em custos de dev antes de conseguirmos salvá-las. A diferença não era o framework — era se o time mapeou cada webhook do Shopify, regra de carrinho e metafield antes do primeiro comando build rodar. Aqui está o que realmente quebra quando você vai headless, e o audit de 11 passos pré-migração que previne isso.
Este guia cobre tudo que eu gostaria que alguém tivesse me contado antes da minha primeira migração headless Shopify: qual framework frontend escolher, como preservar seus rankings de SEO, como alcançar zero downtime durante a migração, o que realmente custa, e timelines realistas baseadas na complexidade da loja. Sem enganação. Sem "depende" sem explicar do que depende.
Índice
- Por Que Migrar de Shopify para Headless?
- Arquitetura Headless Shopify Explicada
- Escolhendo Seu Frontend: Next.js vs Hydrogen vs Remix
- O Processo de Migração Passo a Passo
- Preservação de SEO Durante a Migração
- Estratégia de Migração com Zero Downtime
- Breakdown de Preço e Timeline
- Armadilhas Comuns de Migração
- Quando Headless Não é a Opção Certa
- FAQ

Por Que Migrar de Shopify para Headless?
Vamos deixar claro: Shopify padrão é ótimo para a maioria das lojas. Se você está fazendo menos de $2M/ano e seu tema faz o que você precisa, você provavelmente não precisa de headless. Sério. Já convenci mais pessoas a não fazer essa migração do que convenci a fazer.
Mas há razões legítimas para ir headless:
- Teto de performance: Temas Liquid têm um gargalo de renderização. Mesmo com Online Store 2.0 e Dawn, você está limitado pelo pipeline de server-side rendering do Shopify. Lojas headless consistentemente atingem scores de LCP abaixo de 1 segundo.
- Experiências customizadas: Configuradores de produtos, AR try-ons, filtragem complexa, motores de personalização — estas são dolorosas de construir em Liquid.
- Multi-storefront: Um backend alimentando seu site DTC, portal wholesale, app mobile, e lojas internacionais.
- Marcas ricas em conteúdo: Se sua marca depende muito de conteúdo editorial, lookbooks e storytelling, acoplando um CMS headless com o motor de comércio do Shopify lhe dá o melhor dos dois mundos.
- Experiência de desenvolvimento: Seu time quer trabalhar em React/TypeScript, não Liquid. Isso importa mais do que as pessoas admitem.
Os ganhos de performance são reais e mensuráveis. Em 2026, o Core Web Vitals do Google impacta diretamente seus rankings de busca. Lojas que migrei para headless típicamente veem uma melhoria de 30-50% em LCP e 40-60% em Total Blocking Time. Isso se traduz em melhorias mensuráveis na taxa de conversão — dados próprios do Shopify sugerem que uma melhoria de 1% na velocidade da página pode aumentar a conversão em até 0.7%.
Arquitetura Headless Shopify Explicada
Quando as pessoas dizem "headless Shopify," elas significam desacoplar o frontend (o que clientes veem) do backend (motor de comércio do Shopify). Você mantém Shopify para produtos, inventário, pedidos, checkout e pagamentos. Você constrói um frontend customizado que fala com Shopify via Storefront API.
Aqui está a arquitetura típica:
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Custom Frontend│────▶│ Storefront API │────▶│ Shopify Backend │
│ (Next.js/H2/Remix)│ │ (GraphQL) │ │ (Products, Cart, │
│ │ │ │ │ Orders, etc.) │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ Headless CMS │
│ (Sanity, Contentful,│
│ Storyblok) │
└─────────────────┘
Merchants Shopify Plus obtêm acesso à Checkout Extensibility API, que permite você customizar o checkout sem redirecionar para o checkout hospedado do Shopify. Para lojas non-Plus, clientes ainda são redirecionados para checkout.shopify.com para a compra real — o que honestamente não é uma experiência terrível, mas é uma interrupção de UX.
A Storefront API
Tudo é executado através da Storefront API do Shopify, um endpoint GraphQL que lida com:
- Queries de produtos e coleções
- Gerenciamento de carrinho (criar, atualizar, remover line items)
- Autenticação de cliente
- Conteúdo (metafields, metaobjects)
- Localização e moeda da loja
A API tem rate limits — 50 cost points por segundo para um único app. Na prática, isso raramente é um problema se você está cacheando adequadamente, mas pode mordê-lo durante flash sales se você não planejou.
# Exemplo: Buscando um produto com variantes
query ProductQuery($handle: String!) {
product(handle: $handle) {
id
title
descriptionHtml
priceRange {
minVariantPrice {
amount
currencyCode
}
}
variants(first: 100) {
edges {
node {
id
title
availableForSale
price {
amount
}
selectedOptions {
name
value
}
}
}
}
images(first: 10) {
edges {
node {
url
altText
width
height
}
}
}
}
}
Escolhendo Seu Frontend: Next.js vs Hydrogen vs Remix
Aqui é onde a maioria dos times fica presa. Aqui está minha opinião honesta após construir lojas de produção com os três.
| Recurso | Next.js 15 | Hydrogen 2026 | Remix (Shopify) |
|---|---|---|---|
| Maturidade do framework | Muito maduro, ecossistema massivo | Maduro, específico do Shopify | Maduro (mergeado em React Router 7) |
| Integração Shopify | Manual via Storefront API | First-party, hooks built-in | Bom via Hydrogen UI |
| Hosting | Vercel, Netlify, self-hosted | Oxygen (Shopify) ou self-hosted | Anywhere, mas otimizado para Oxygen |
| Curva de aprendizado | Moderada | Moderada-Alta | Moderada |
| Comunidade/contratação | Massiva | Pequena mas crescente | Média |
| Flexibilidade SSR/SSG | Excelente (App Router) | SSR-focado (streaming) | SSR-focado (loaders) |
| Controle de caching | ISR, revalidação on-demand | Caching de sub-request Oxygen | Caching HTTP padrão |
| Melhor para | Times com experiência React, necessidades de conteúdo complexo | Times Shopify-native, lojas simples-médias | Times querendo o caminho recomendado do Shopify |
Next.js: A Aposta Segura
Next.js é o que recomendo para a maioria dos times, especialmente se você está acoplando Shopify com um CMS headless como Sanity ou Contentful. O ecossistema é enorme, contratação é mais fácil, e você obtém flexibilidade incrível com os server components do App Router.
A desvantagem? Você precisa conectar a integração Shopify você mesmo. Não há SDK oficial do Shopify para Next.js (embora pacotes comunitários como @shopify/hydrogen-react lhe dêem hooks de carrinho e utilitários). Você gastará mais tempo com boilerplate.
Construímos muitas lojas Shopify headless com Next.js na Social Animal — é nosso stack mais solicitado para projetos de ecommerce.
Hydrogen: Próprio Framework do Shopify
Hydrogen é o framework headless oficial do Shopify, construído em cima do Remix (agora React Router 7). Vem com componentes pré-construídos para produtos, carrinhos e SEO — mais integração apertada com Oxygen, plataforma de hosting edge do Shopify.
O apelo é claro: menos boilerplate, caching otimizado para Shopify, e uma história de deployment que simplesmente funciona em Oxygen. Releases recentes trouxeram melhorias significativas incluindo melhor suporte TypeScript e atualizações de UI otimistas para operações de carrinho.
As desvantagens? Comunidade menor, menos recursos quando você fica preso, e você está um pouco bloqueado no ecossistema do Shopify. Se você ever quiser trocar backends de comércio, você está reescrevendo muito mais código do que faria com Next.js.
Remix / React Router 7
Aqui está a parte confusa: Remix foi mergeado em React Router 7. Hydrogen é construído em cima do Remix. Então "Remix para Shopify" efetivamente significa Hydrogen na maioria dos contextos.
Se você quiser usar React Router 7 sem as abstrações específicas do Shopify do Hydrogen, pode. Você obtém os mesmos padrões loader/action, o mesmo streaming SSR, e controle total sobre sua integração Shopify. Isso faz sentido se você já é um time Remix e quer máxima flexibilidade.
Minha Recomendação
Para marcas ricas em conteúdo com layouts de página complexos: Next.js + CMS headless. Para lojas DTC diretas que querem o caminho mais rápido para produção: Hydrogen em Oxygen. Para times já investidos no ecossistema Remix: React Router 7 com componentes Hydrogen UI.

O Processo de Migração Passo a Passo
Aqui está o processo que sigo para cada migração. É chato. Funciona.
Fase 1: Auditoria e Planejamento (2-3 semanas)
- Rastreie o site existente — Use Screaming Frog ou Sitebulb para catalogar cada URL, redirecionamento, tag canônica e bloco de dados estruturados. Exporte isso. Você vai precisar depois.
- Documente todas as integrações — Klaviyo, Yotpo reviews, programas de fidelidade, apps de inscrição (Recharge, Loop), gateways de pagamento. Cada um.
- Mapeie estruturas de URL — Suas novas URLs corresponderão às antigas? Shopify usa
/products/product-handlee/collections/collection-handle. Se você mudar estas, você precisa de redirecionamentos. - Identifique funcionalidade customizada — Qualquer coisa além de browse-and-buy padrão. Gift cards, bundles, preços wholesale, multi-moeda, B2B.
- Escolha seu stack — Framework frontend, CMS, hosting, CDN.
Fase 2: Construir o Frontend (6-12 semanas)
Aqui é onde o desenvolvimento real acontece. Áreas-chave:
- Páginas de produto com seleção de variante, galerias de imagem, integração de reviews
- Páginas de coleção com filtragem, ordenação, paginação
- Carrinho com verificações de inventário em tempo real e upsells
- Busca — Shopify Predictive Search API ou third-party como Algolia
- Contas de cliente — login, histórico de pedidos, gerenciamento de endereço
- Páginas orientadas por CMS — homepage, about, landing pages
- Redirecionamento de checkout — tratando a entrega para checkout do Shopify
// Exemplo: página de produto Next.js com ISR
import { getProduct } from '@/lib/shopify'
import { ProductDetails } from '@/components/product-details'
export async function generateStaticParams() {
const products = await getAllProductHandles()
return products.map((handle) => ({ handle }))
}
export default async function ProductPage({
params
}: {
params: { handle: string }
}) {
const product = await getProduct(params.handle)
if (!product) notFound()
return (
<>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{
__html: JSON.stringify(generateProductJsonLd(product)),
}}
/>
<ProductDetails product={product} />
</>
)
}
export const revalidate = 60 // ISR: revalidar a cada 60 segundos
Fase 3: Integração e QA (2-4 semanas)
Conecte todos os serviços third-party. Teste tudo. E quero dizer tudo:
- Coloque pedidos de teste em todos os métodos de pagamento
- Teste códigos de desconto, gift cards, descontos automáticos
- Verifique rastreamento de analytics (GA4, Meta Pixel, TikTok Pixel)
- Teste de carga nas chamadas da Storefront API sob tráfego esperado
- Teste em dispositivos reais, não apenas Chrome DevTools
Fase 4: Migração (1-2 dias)
O switch real. Mais sobre isso na seção de zero-downtime abaixo.
Preservação de SEO Durante a Migração
Aqui é onde as migrações dão errado. Já vi lojas perder 40% de tráfego orgânico porque alguém esqueceu de redirecionamentos de URL. Não seja esse time.
Mapeamento de URL
Crie um documento completo de mapeamento de URL antes de escrever uma única regra de redirecionamento. Cada URL no site antigo precisa de um destino no site novo.
ANTIGA: /collections/summer-2024
NOVA: /collections/summer-2024 ← Igual? Ótimo, nenhum redirecionamento necessário.
ANTIGA: /blogs/news/our-story
NOVA: /journal/our-story ← Diferente? Redirecionamento 301 necessário.
ANTIGA: /pages/about-us
NOVA: /about ← Diferente? Redirecionamento 301 necessário.
Dados Estruturados
Temas do Shopify incluem dados estruturados básicos. Quando você vai headless, você é responsável por implementá-lo você mesmo. No mínimo:
- Schema
Productcomoffers,aggregateRating BreadcrumbListpara navegaçãoOrganizationpara sua marcaWebSitecomSearchActionpara sitelinks searchFAQPageonde aplicável
Meta Tags e Canônicos
Cada página precisa de <title> adequado, <meta description>, URL canônica, e tags Open Graph. Em Next.js, use a Metadata API:
export async function generateMetadata({ params }): Promise<Metadata> {
const product = await getProduct(params.handle)
return {
title: product.seo.title || product.title,
description: product.seo.description || product.description,
openGraph: {
images: [product.featuredImage?.url],
},
alternates: {
canonical: `https://yourstore.com/products/${params.handle}`,
},
}
}
XML Sitemap
Gere seu sitemap dinamicamente a partir dos dados do Shopify. Inclua produtos, coleções, e páginas de CMS. Envie para Google Search Console imediatamente após a migração.
Checklist de SEO Pré-Migração
- Documento completo de mapeamento de URL
- Redirecionamentos 301 configurados e testados
- Dados estruturados implementados e validados
- Meta tags puxando de campos SEO do Shopify
- Sitemap XML gerado dinamicamente
- robots.txt configurado corretamente
- Google Search Console notificado de mudança de domínio (se aplicável)
- Links internos atualizados para nova estrutura de URL
- Alt texts de imagem preservados do Shopify
Estratégia de Migração com Zero Downtime
Zero downtime não é mágica. É gerenciamento de DNS e preparação.
A Abordagem de Deployment Blue-Green
- Construa e implante o novo site em um domínio de staging (ex:
new.yourstore.com) - Execute ambos os sites simultaneamente por pelo menos uma semana, testando o novo site completamente
- Configure seu CDN/DNS para suportar switching instantâneo (Cloudflare, Vercel, ou Netlify todos suportam isso)
- Mude DNS para apontar para o novo frontend — TTL deve ser definido para 60 segundos bem antes
- Monitore tudo: taxas de erro, 404s, taxas de conversão, Core Web Vitals
A Abordagem de Proxy (Ainda Mais Segura)
Para lojas fazendo mais de $1M/mês, eu prefiro uma migração baseada em proxy:
- Coloque um proxy reverso (Cloudflare Workers, Vercel Edge Middleware) em frente de ambos os sites antigos e novos
- Roteie tráfego página por página — comece com uma página de baixo risco como
/about - Mude gradualmente páginas para o novo frontend ao longo de 2-4 semanas
- Monitore a performance de cada página antes de mover o próximo batch
- Páginas de produto e coleção vão por último (risco de receita mais alto)
Esta abordagem adiciona complexidade mas permite você pegar issues antes que afetem sua loja inteira.
// Exemplo de Vercel Edge Middleware para migração gradual
import { NextResponse } from 'next/server'
export function middleware(request: NextRequest) {
const { pathname } = request.nextUrl
// Páginas já migradas para novo frontend
const migratedPaths = ['/about', '/contact', '/journal']
if (migratedPaths.some(path => pathname.startsWith(path))) {
return NextResponse.next() // Sirva do novo frontend
}
// Tudo mais faz proxy para loja Shopify antiga
return NextResponse.rewrite(
new URL(pathname, 'https://old-store.myshopify.com')
)
}
Breakdown de Preço e Timeline
Vamos falar números reais. Estes são baseados em projetos que vi em 2026, variando de lojas DTC simples a operações complexas multi-mercado.
| Complexidade da Loja | Timeline | Custo de Agência | Custo de Freelancer |
|---|---|---|---|
| Simples (< 50 produtos, páginas básicas, checkout padrão) | 8-12 semanas | $40,000 - $75,000 | $20,000 - $40,000 |
| Média (50-500 produtos, CMS, inscrições, multi-moeda) | 12-20 semanas | $75,000 - $150,000 | $40,000 - $80,000 |
| Complexa (500+ produtos, B2B+DTC, checkout customizado, múltiplas integrações) | 20-32 semanas | $150,000 - $300,000+ | $80,000 - $150,000 |
Custos Contínuos
Não esqueça as despesas recorrentes:
- Shopify Plus: $2,300/mês (necessário para checkout extensibility, recomendado para headless)
- Hosting: $20-500/mês (Vercel Pro é $20/usuário, Oxygen está incluído com Shopify)
- CMS Headless: $0-500/mês (Sanity, Contentful, Storyblok todos têm tier free)
- Busca: $0-500/mês se usando Algolia ou similar
- Manutenção: Orçamento 10-15% do custo de build inicial anualmente
Para times explorando o que uma migração headless Shopify custaria para sua situação específica, nós detalhamos nossa abordagem de preço aqui. Também estamos felizes em avaliar as coisas durante uma chamada rápida.
Armadilhas Comuns de Migração
1. Subestimar o Carrinho
O carrinho parece simples até você levar em conta: códigos de desconto, descontos automáticos, gift cards, propriedades de line item, notas de carrinho, shipping estimado, cálculos de imposto, e metafields de nível de carrinho. Orçamente duas vezes o tempo que você acha que precisa para funcionalidade de carrinho.
2. Esquecendo Sobre Apps
Esse ecossistema de app Shopify que você depende? A maioria dos apps injeta JavaScript em seu tema Liquid. Indo headless significa você precisa de alternativas baseadas em API ou implementações customizadas para reviews, wishlists, programas de fidelidade, e mais.
3. Customização de Checkout
Sem Shopify Plus ($2,300/mês), você não consegue customizar a experiência de checkout. Clientes serão redirecionados para o checkout hospedado do Shopify, o que cria uma desconexão visual. Merchants Plus podem usar Checkout Extensibility, mas ainda é mais limitado que um checkout totalmente customizado.
4. Não Testar Performance Cedo
A Storefront API adiciona latência. Se você está fazendo 8 chamadas de API para renderizar uma página de produto, você vai sentir. Cache agressivamente, use fragmentos GraphQL para minimizar over-fetching, e implemente streaming SSR onde possível.
5. Ignorar o Time de Conteúdo
Seu time de marketing gerenciava conteúdo no admin do Shopify. Agora eles precisam de um CMS headless. Orçamente tempo para treinamento e construir uma experiência de edição de conteúdo que é realmente agradável de usar. É aqui onde headless CMS development expertise realmente importa.
Quando Headless Não é a Opção Certa
Vou ser direto com você: headless Shopify não é para todo mundo. Não migre se:
- Sua loja faz menos de $1M/ano e você não tem necessidades de customização complexa
- Você não tem orçamento para desenvolvimento e manutenção contínua
- Seu time não tem desenvolvedores React (ou orçamento para contratar/contratá-los)
- Você está feliz com a performance e recursos do seu tema atual
- Você está principalmente procurando uma história "tech legal" ao invés de resolver problemas reais de negócio
Online Store 2.0 do Shopify com um tema bem-otimizado pode marcar 90+ no Lighthouse. Às vezes a resposta certa é otimizar o que você tem ao invés de reconstruir do zero.
Se você está na dúvida, considere começar com uma abordagem híbrida: mantenha seu tema Shopify mas construa páginas de alto impacto específicas (como sua homepage ou landing pages) como headless. Você pode usar Shopify's Storefront API ao lado de seu tema existente. Isso permite você provar valor antes de se comprometer com uma migração completa.
FAQ
Quanto tempo leva para migrar de Shopify para headless?
Para uma loja de complexidade média típica, espere 12-20 semanas do kickoff ao launch. Lojas simples com menos produtos e funcionalidade básica podem ser lançadas em 8-12 semanas. Lojas complexas multi-mercado com checkout customizado e integrações extensas frequentemente levam 20-32 semanas. A fase de auditoria e planejamento sozinha deve ser 2-3 semanas — não pule.
Vou perder meus rankings de SEO quando migrar para Shopify headless?
Não se você fazer certo. As chaves são: manter a mesma estrutura de URL (ou configurar redirecionamentos 301 adequados), implementar dados estruturados em cada tipo de página, preservar meta tags e URLs canônicas, e enviar um sitemap atualizado para Google Search Console imediatamente após o launch. Tipicamente vejo uma flutuação de rankings de 1-2 semanas pós-migração, seguida de melhoria uma vez que Google reconheça os scores melhores de Core Web Vitals.
Eu preciso de Shopify Plus para headless?
Tecnicamente, não. A Storefront API está disponível em todos os planos Shopify. No entanto, Shopify Plus lhe dá Checkout Extensibility (customize a experiência de checkout), rate limits mais altos de API, e acesso ao hosting Oxygen. Para projetos headless sérios, Plus em $2,300/mês é quase sempre vale a pena.
Qual é a diferença entre Hydrogen e usar Next.js com Shopify?
Hydrogen é o framework headless oficial do Shopify construído em Remix/React Router 7. Inclui componentes, hooks, e utilitários específicos do Shopify out of the box, mais deployment otimizado em Oxygen. Next.js exige você construir a integração Shopify você mesmo mas lhe dá um ecossistema maior, mais opções de hosting, e melhor suporte para arquiteturas de conteúdo complexo. Maioria das agências, incluindo a nossa, tem opiniões fortes aqui baseadas nos requisitos específicos do projeto.
Posso migrar para Shopify headless com zero downtime?
Sim, usando either um deployment blue-green (DNS switch) ou uma migração gradual baseada em proxy. A abordagem blue-green muda todo o tráfego de uma vez via DNS, enquanto a abordagem proxy migra páginas incrementalmente ao longo de semanas. Ambas funcionam. A abordagem proxy é mais segura para lojas de receita alta mas adiciona complexidade.
Quanto custa uma migração Shopify headless?
Custos de agência típicamente variam de $40,000 para uma loja simples a $300,000+ para operações complexas multi-mercado. Taxas de freelancer são aproximadamente 50-60% dos custos de agência mas podem vir com menos estrutura de gerenciamento de projeto e menos especialistas. Custos contínuos incluem Shopify Plus ($2,300/mês), hosting ($20-500/mês), CMS ($0-500/mês), e manutenção (10-15% do custo de build anualmente).
Devo usar Astro ao invés de Next.js ou Hydrogen para Shopify headless?
Astro é uma ótima escolha para sites ricos em conteúdo com ilhas de interatividade, e construímos vários storefronts alimentados por Astro. Funciona bem para lojas estilo catálogo onde maioria das páginas são estáticas e você só precisa de React (ou Svelte, Vue) para componentes interativos como o carrinho. No entanto, para lojas com interatividade pesada no cliente — inventário em tempo real, filtragem complexa, busca instantânea — a runtime completa React do Next.js ou Hydrogen é geralmente um fit melhor.
O que acontece com meus apps Shopify após migrar para headless?
A maioria dos apps Shopify que injetam código frontend (popups, widgets, exibições de review) não funcionarão out of the box. Você vai precisar either usar a API do app diretamente, encontrar uma alternativa compatível com headless, ou construir implementações customizadas. Apps que apenas operam no backend (gerenciamento de inventário, shipping, integrações de ERP) típicamente continuam funcionando sem mudanças. Sempre faça auditoria de sua stack de app durante a fase de planejamento.