Wally's · Auditoría
Auditoría de preventa · solo lectura · Court Avenue

Wally's Wine & Spirits

Un stack caro configurado como una app, no como un sitio que Google tenga que leer. Los cimientos sirven; falta la capa de SEO y la medición pierde datos.

wallywine.com Medido el domingo 13 de septiembre de 2026 Shopify Hydrogen + Oxygen · Sanity
28,108
URLs de producto en el sitemap
80 %
agotadas (49 de 61 en la muestra)
0
H1, precio o descripción en el HTML que recibe Google
236 / 266
colecciones sin metadescripción
0
eventos enviados por Meta Pixel
9
páginas del CMS en blanco, indexables (3 vivas + 6 borradores)

Todo se midió hoy con llamadas reales desde esta máquina (curl, Chrome headless y headed, Lighthouse 13.4 local). Nada se tomó de documentos previos. Lo que no se pudo medir está marcado «no comprobado» con el motivo.

1. Resumen ejecutivo

Qué es Wally's, para no auditarlo como si fuera sólo una tienda: cuatro restaurantes/wine bars con tienda (Beverly Hills, Santa Monica, Malibu, Las Vegas), reservas por OpenTable y SevenRooms, catas y eventos con boleto, private dining, catering, canastas corporativas y bodega de guarda. El e-commerce es una de sus líneas; la búsqueda de marca de restaurante («Wally's Beverly Hills reservations», «hours») es probablemente la mayor fuente de tráfico orgánico — probablemente, porque sin GSC no se mide. Ver A12 y M6.

Wally's corre sobre Shopify Hydrogen + Oxygen, Sanity CMS, Klevu, Klaviyo y Gorgias. El resultado es un catálogo de ~28,100 URLs de producto en el sitemap, ~80 % agotadas, mezcladas con inventario de punto de venta (Red Bull, Michelob, tazas de plástico), todas indexables y todas con lastmod falso. Encima de eso, el HTML que recibe Google no contiene el producto: nombre, precio, descripción y botón de compra sólo existen después de que corre React, y React falla al hidratar en todas las páginas probadas.

Cinco cosas explican casi todo:

  1. El servidor no entrega contenido de producto. El HTML de un PDP trae menú, breadcrumb y footer; H1, precio y descripción llegan por JavaScript. Google los ve sólo si renderiza cada una de las 28 mil páginas.
  2. La navegación principal apunta a URLs que se cancelan a sí mismas. Los 31 enlaces de «Shop by Region» y «Shop by Country» van a /wines?filter.region=Napa+Valley → 301 → /collections/wines?filter… con canonical a /collections/wines sin filtro. Las páginas de más intención comercial no existen para Google, aunque /collections/napa-valley sí existe y no está enlazada.
  3. Las colecciones muestran 12 productos y un botón «LOAD MORE». Cabernet Sauvignon tiene 357; Google ve 12. No hay paginación enlazable y ?page=2 canoniza a la página 1.
  4. Colecciones internas públicas e indexables: zero-stock, no-image, no-description, in-stock-all, wallys-products-to-archive, discountable, retag, fb-insta. Más 10+ duplicados por sufijo y 8 colecciones «December Sale» vivas en septiembre.
  5. La medición tiene fugas. Meta Pixel se carga pero no envía ningún evento. El dataLayer manda items como objeto, no como arreglo: GA4 recibe view_item/add_to_cart sin producto. Los tags disparan antes de aceptar cookies y no hay Consent Mode. Hay dos Hotjar.

Lo bueno: HTTPS/HSTS correctos, redirecciones limpias a https://www, robots.txt sano, sitemap de productos que sí se genera, JSON-LD Product + BreadcrumbList en cada PDP y CollectionPage en cada colección, TTFB de 220–440 ms, CLS 0 en home y PDP, 404 con noindex y código correcto, sin hreflang que arreglar.

No comprobado hoy: tráfico estimado, backlinks, DR, keywords y competidores por Ahrefs — el conector devolvió Access denied: MCP token is invalid en dos intentos. Core Web Vitals de campo (CrUX) — la API de PageSpeed respondió 429 sin key. Ambos se completan al reconectar, sin repetir el resto.

2. Plataforma y stack

CapaQué hayEvidencia
StorefrontShopify Hydrogen (React Router 7) sobre Oxygenpowered-by: Shopify, Oxygen, Hydrogen
CMSSanity (6n4fbwab, dataset production)cdn.sanity.io, sitemap-sanity.xml, SANITY_STUDIO_USE_PREVIEW_MODE: "true" en el HTML
Tiendacbbc83-3.myshopify.com, Storefront API 2025-07, checkout en el dominio myshopifyloader data
CDNCloudflare delante de Oxygenserver: cloudflare, cf-ray
BúsquedaKlevuKLEVU_KEY en el HTML
Email / CRMKlaviyo — 73 requests por páginared
SoporteGorgias — 63 requests por páginared
AccesibilidadUserWay — 31 requests por páginared
Analítica / adsGTM GTM-MNRVWXQ → GA4 G-DDRQ9T5MZ2, Ads AW-1070057468, Meta 487230146902047, Bing UET 26014677, LinkedIn 6778964, Hotjar ×2google_tag_manager + red
FuentesTypekit + Google Fonts + bunny.net — tres proveedoresred

Límites de la plataforma que hay que decir en la reunión:

3. Hallazgos priorizados

Escala: Crítico (bloquea indexación o mide mal el negocio) · Alto · Medio · Bajo. Cada uno con evidencia reproducible.

3.1 Rastreo e indexación

Crítico

C1El HTML servido no contiene el producto

curl -A Googlebot …/products/makers-mark-bourbon-whiskey-750ml → 190 KB; el texto visible del <body> es el menú, «Home / Collections / ZERO STOCK / Makers Mark…» y el footer. Sin H1, sin precio, sin descripción, sin add-to-cart. Tras renderizar en Chrome aparecen. Lo mismo en colecciones: el grid no está en el HTML. La consola registra Hydration failed because the initial UI does not match what was rendered on the server ×2–4 por página; React descarta el HTML del servidor y vuelve a pintar.

Arreglo: corregir el mismatch (el error señala <script type="application/ld+json"> con type null en servidor vs cliente, y la prop fetchPriority en <meta>) y renderizar nombre, precio, descripción y grid en el servidor — Hydrogen lo soporta; hoy está en defer/streaming.

Crítico

C2~22 mil URLs de producto agotado, indexables y en el sitemap

Muestra de 61 productos de 8 sitemaps repartidos (1, 25, 60, 100, 140, 180, 220, 233): 49 OutOfStock / 12 InStock en el JSON-LD. Extrapolado a 28,108 URLs → ~22,500 páginas sin stock, todas index,follow, todas en el sitemap con changefreq: weekly. Entre ellas, inventario de POS: Perrier 11oz, Michelob Ultra 12oz, Red Bull 8oz, Faygo Cream Soda, «Plastic Coffee Mug 8 Oz 10pk».

Arreglo: agotado sin fecha de reposición → noindex + fuera del sitemap (+301 a la colección si lleva >90 días); sacar los productos de POS del canal Online Store (por canal, sin borrar); sitemap filtrado por disponibilidad.

Crítico

C3La navegación principal manda a URLs que se cancelan

31 enlaces del mega-menú («Shop by Region», «Shop by Country») → /wines?filter.region=Napa+Valley301/collections/wines?filter.region=Napa+Valleycanonical /collections/wines sin filtro. Las colecciones de región y país que sí existen (/collections/napa-valley, /collections/france-1, /collections/italy-1) no reciben ningún enlace desde el header.

Arreglo: apuntar el menú a las colecciones reales; si se mantiene el filtro, canonical al filtro de primer nivel y una colección por región/país.

Alto

A1Colecciones sin paginación rastreable

/collections/cabernet-sauvignon: «357 Products», 12 enlaces a producto en el DOM y un <button>LOAD MORE</button>. ?page=2 devuelve 200 con canonical a la página 1. Los otros 345 productos sólo se descubren por sitemap.

Arreglo: paginación con <a href="?page=N"> real (Hydrogen Pagination), canonical auto-referente por página.

Alto

A2Colecciones internas de operación públicas e indexables

En el sitemap y con index,follow: zero-stock, no-image, no-description, no-description-spirits, in-stock-all, in-stock-import-wine, in-stock-domestic-wines, in-stock-spirits, wallys-products-to-archive, discountable, retag, fb-insta, popular-on-meta, mid-spirits, high-spirits, top-end, wine_offers. El breadcrumb de un PDP muestra «Home / Collections / ZERO STOCK / …».

Arreglo: noindex + fuera del sitemap + excluir del breadcrumb. Sin borrar nada: son colecciones de trabajo del equipo.

Alto

A3Duplicados de colección y colecciones caducas

loire/loire-1, california-1/california-2, pinot-gris-grigio/-1, bordeaux-blend/bordeaux-blends, champagne/champagne-sparkling/champagne-sparkling-wine, wine/wines, gift-card/gift-cards, france-1, italy-1, united-states-1, alsace-1, burgundy-1, rhone-1. Ocho *-december-sale más mothers-day-baskets, fifa-world-cup-collection, thanksgiving-by-wallys, easter-passover-baskets, womens-day vivas hoy.

Arreglo: consolidar con 301; estacionales → noindex fuera de temporada o URL perenne que se rellena cada año.

Alto

A4/homepage duplica el home y tiene mejor metadescripción

200, index,follow, canonical a sí mismo, en sitemap-sanity.xml, título «Shop Wally's | …». Es el documento de Sanity del home publicado como página aparte.

Arreglo: 301 a / y fuera del sitemap.

Medio

M1URLs insensibles a mayúsculas con canonical propio

/Products/Makers-Mark-Bourbon-Whiskey-750ml → 200 con canonical a la versión en mayúsculas. Cualquier variante genera un duplicado indexable. Trailing slash sí canoniza bien.

Medio

M2Sitemap con basura

El índice lista sitemap-empty.xml (devuelve HTML 404), sitemap/pages/1.xml y sitemap/articles/1.xml contienen únicamente /. Los 233 sitemaps de producto traen lastmod = hora de la petición. Tres tardaron >40 s en responder hoy.

Medio

M3/search y /collections indexables

Ambos 200, index,follow, canonical propio. /search con Klevu genera resultados infinitos.

Bajo

B1404 correctos, 302 en /collections/all

/collections/all → 302 a /products (debería ser 301). Los 404 devuelven 404 + noindex + 159 KB.

3.2 SEO técnico y rendimiento

Alto

A5Home de 11 MB en móvil por un MP4 de 8.7 MB

Lighthouse móvil: home Perf 56, LCP 3.8 s, TBT 1,020 ms, TTI 16.5 s, peso total 10,960 KiB, del cual cdn.sanity.io/files/…/d7145a0777fc….mp4 = 8,712 KiB. Hero de video sin poster optimizado, servido igual a móvil y escritorio.

Arreglo: poster WebP + preload="metadata", versión móvil ≤1 MB o imagen estática en móvil; mover el MP4 a Mux (ya está en el CSP).

Alto

A6Colección: LCP 15.9 s, CLS 0.245, TTI 19 s

PáginaPerfLCPTBTCLSTTIPeso
Home563.8 s1,020 ms016.5 s10,960 KiB
/collections/caviar3915.9 s530 ms0.24519.0 s2,413 KiB
PDP Makers Mark 46546.2 s670 ms017.3 s2,326 KiB

El grid llega tarde (C1) y se mueve al cargar. JavaScript sin usar ~600 KiB por página; scripts totales 1.75 MB. Campo (CrUX): no comprobado — PageSpeed API 429 sin key.

Medio

M4Terceros que pesan más que el sitio

454 requests por PDP. Klaviyo 73, Gorgias 63, UserWay 31, LinkedIn 11, Google Ads 10, Bing 9. Dos Hotjar. Tres proveedores de fuentes. GTM carga gtag/js + gtag/destination + gtm.js = 507 KB.

Arreglo: Gorgias/UserWay/Klaviyo tras interacción; eliminar un Hotjar; una fuente.

Bajo

B2Cabeceras y seguridad: bien

HTTPS en todo, HSTS 1 año, CSP con nonce, nosniff, sin mixed content. http://wallywine.com da dos saltos (→ https://wallywine.comhttps://www).

Bajo

B3Config en el HTML

PUBLIC_STOREFRONT_API_TOKEN, KLEVU_KEY, USERWAY_ACCOUNT_ID y SANITY_STUDIO_USE_PREVIEW_MODE: "true" viajan en el loader data. Los públicos son públicos por diseño; el flag de preview en producción conviene revisarlo con dev.

3.3 On-page y contenido

Alto

A7Home sin H1, sin H2, sin navegación y con 16 enlaces

Renderizado en Chrome headless y headed (dos UAs, 3 corridas): el DOM del home tiene 0 <h1>, 0 <h2>, 0 <header>, 0 <nav>, 4 <h3> (FINE + RARE, CAVIAR, GIFT BASKETS, TASTINGS + EVENTS) y 16 enlaces únicos (3 a colecciones, resto footer y redes). Texto visible: 591 caracteres. En PDP y colecciones el header sí se monta (116 enlaces, 69 a colecciones). Desde el home, Google llega a 3 colecciones.

Verificar con el cliente: si el header ausente en / es intencional (landing de video) o un bug de la ruta _index. Para SEO es un home que no enlaza al catálogo.

Alto

A8236 de 266 colecciones sin metadescripción; título «X | Collection»

Las 266 se descargaron hoy: 236 sin meta description, 266 con título terminado en «| Collection» (sin marca, sin modificador). El H1 de colección no está en el HTML servido (C1). No hay texto de colección arriba del grid.

Arreglo: plantilla «{Colección} — Buy Online | Wally's Wine & Spirits» + descripción desde Sanity/Shopify con fallback.

Alto

A9Descripciones de producto: 30 de 61 vacías, el resto cortadas y genéricas

30 sin metadescripción; 28 con la descripción del JSON-LD truncada a ~150 caracteres terminando en «...». Las que existen son texto generado sin datos («In the soft hush of an evening fire, Makers Mark Bourbon Whiskey emerges as a quiet masterpiece…»): sin región, sin puntuación de crítica, sin maridaje, sin ABV. La consola avisa description should not be longer than 155 characters en cada carga.

Arreglo: descripción estructurada por atributos (los filtros ya los tienen: Varietal, Vintage, Region, Appellation, Size) + notas de cata; las puntuaciones de críticos que ya se muestran en tarjetas («WA | 98+», «V | 97») como texto y como Review.

Medio

M5Schema Product con errores que Google va a marcar

  • brand.name = distribuidor, no marca: «Southern Wine & Spirits» (11/61), «Republic National Distributing Co.», «BREAKTHRU Beverage», «Coca Cola Refreshments», o nombres de persona («JOANNE», «Mark P Goodman»). El campo vendor de Shopify se mapea a brand.
  • sku: "" en todos; sin gtin, sin aggregateRating, sin Review aunque las puntuaciones existen en la UI.
  • offers.url con ?Title=Default+Title; description truncada con «...».
  • BreadcrumbList con «Products» como raíz y sin item en el último nodo.
  • Organization.url cambia por página y sameAs tiene 4 strings vacíos. WebPage.name: "Home page" en todas las páginas.
Medio

M6SEO local a medias: Restaurant en las 4 tiendas, nada en /locations, sin horarios ni menú

Corrección a la primera versión: /beverlyhills, /santamonica, /malibu y /lasvegas llevan JSON-LD Restaurant (medido en el DOM renderizado). Lo que falta: /locations sólo tiene Organization; horarios visibles sólo en Las Vegas; teléfono en 3 de 4; no existe página de menú (/menu → 404); las reservas van a OpenTable y SevenRooms sin acceptsReservations en el schema. Los campos del Restaurant quedan por verificar uno a uno en fase 2.

Alto

A12Páginas del CMS publicadas en blanco e indexables — la lección de TOOUS

Renderizadas hoy: /locations (591 caracteres = banner de cookies + footer), /reservations (576) y /staffpicks (576) están vacías con 200, index,follow y en el sitemap. Además, seis borradores de rediseño publicados: /homepage-redesign, /restaurant-redesign, /beverlyhills-redesign, /events-redesign, /eventlisting-redesign, /redesign — todos 200, indexables, en blanco, con título genérico. /reservations y /locations son donde aterriza la búsqueda de marca de un restaurante. En TOOUS el 61 % de las vistas caía en páginas en blanco por una sección desactivada; aquí el mecanismo es distinto y el efecto es el mismo. Cuánto tráfico reciben: requiere GA4.

Arreglo: noindex + fuera del sitemap para los *-redesign; contenido real en /locations y /reservations (los enlaces de OpenTable ya existen en el footer de las páginas de tienda). /catering lleva el título de /private-dining; ninguna de las dos tiene H1.

Medio

M7Imágenes sin alt

2 de 8 en home y en cada plantilla (logo/hero). Arreglo trivial.

Bajo

B4Sin hreflang, un idioma, un mercado

Correcto para el negocio actual. Nada que arreglar.

3.4 Autoridad, AEO/GEO

Autoridad y backlinks: no comprobado — Ahrefs no respondió hoy (token del conector inválido). Al reconectar: DR, dominios de referencia, backlinks rotos, keywords, top pages, competidores y tráfico con fecha y rango.

Alto

A10Preparación para crawlers de IA: casi nula

  • robots.txt no bloquea GPTBot, ClaudeBot, PerplexityBot ni Google-Extended: pueden entrar.
  • Pero lo que leen es el HTML del servidor: menú + footer, sin producto (C1). Los crawlers de IA no ejecutan JavaScript. Para ChatGPT/Perplexity, hoy Wally's tiene 28 mil páginas vacías.
  • Sin /llms.txt, sin /agents.md, sin endpoint MCP/UCP (/api/ucp/mcp → 404). Shopify lo da en Online Store; en Hydrogen hay que exponerlo.
  • El JSON-LD Product sí está en el HTML: hoy es la única señal legible por máquina — con brand = distribuidor y descripción cortada, es una señal equivocada.

3.5 Tracking y medición

Crítico

C4Meta Pixel cargado, cero eventos

fbevents.js y signals/config/487230146902047 se descargan en cada página; 0 requests a facebook.com/tr en home + 2 PDPs + add-to-cart, antes y después de aceptar cookies. fbq existe y su cola está vacía. Si hay pauta en Meta, hoy no hay PageView, ViewContent ni AddToCart del pixel del navegador (CAPI desde Shopify, si existe, es aparte).

Requiere acceso: GTM (tag pausado o bloqueado por consentimiento) y Events Manager.

Crítico

C5dataLayer e-commerce con items como objeto, no arreglo

{"event":"view_item","ecommerce":{"currency":"USD","price":32,
  "items":{"item_id":"gid://shopify/Product/8679633518842",
           "item_name":"Makers Mark Bourbon Whiskey 750mL","price":32}}}
{"event":"add_to_cart","ecommerce":{"currency":"USD","value":40,
  "items":{"item_id":"gid://shopify/Product/8733651435770",
           "item_name":"Makers Mark 46 Bourbon Whiskey 750mL","price":40,"quantity":1}}}

GA4 espera items: [ {…} ]. Con un objeto, el evento llega sin ítems: informes de producto, ingresos por ítem y embudo quedan vacíos o parciales. item_id es el GID de Shopify, no el SKU. view_item sin value. No se observó view_item_list (la colección emite collection_viewed dos veces), ni select_item, ni begin_checkout. Checkout vive en cbbc83-3.myshopify.com: cross-domain no comprobado.

Requiere acceso: GA4 DebugView y GTM para confirmar que el tag no re-mapea el objeto.

Alto

A11Tags disparan antes del consentimiento; sin Consent Mode

El primer analytics.google.com/g/collect?en=page_view salió antes de tocar el banner de Shopify («We value your privacy… Accept / Decline»). El hit lleva gcd=13l3l3l3l1l1 y dma=0: no hay consent default/update. Klaviyo, Bing, LinkedIn y Hotjar también disparan de entrada. «Decline» no apaga nada.

Medio

M8Duplicados y ruido

Dos Hotjar (3902686, 2599820). collection_viewed ×2 por página. page_viewed custom además del page_view de GA4. UTMs: sin pauta activa observable desde fuera (no comprobado).

Confirmado hoy desde fueraRequiere GA4 / GTM / GSC / Ads
GTM, GA4, Ads, Meta, Bing, LinkedIn, Klaviyo, Hotjar ×2 presentesSi el tag de Meta está pausado o bloqueado por consentimiento
GA4 page_view se envía; Meta /tr noCross-domain hacia el checkout myshopify
items es objeto en view_item y add_to_cartSi GTM lo re-mapea antes de enviarlo a GA4
Sin Consent Mode (gcd), tags antes de aceptarEnhanced conversions, CAPI, deduplicación event_id
Sin view_item_list, select_item, begin_checkout en el frontpurchase (sólo visible en checkout)

4. Benchmark breve

Sin Ahrefs no hay comparación de tráfico ni autoridad (pendiente). Lo técnico, medido hoy con la misma llamada (HTML del servidor con UA Googlebot, home):

SitioPlataformaTexto en HTML servidoEnlaces internosH1 en HTML
wallywine.comHydrogen/Oxygen1,334 chars8ninguno
flaskfinewines.com (LA)Shopify OS11,134130«Fine Wine & Whisky Merchants Since 1962»
hitimewine.net (Costa Mesa)BigCommerce5,60730«Hi-Time Wine Cellars»
klwines.com · wine.combloquean al UA Googlebot desde esta IP

Los dos competidores regionales comparables entregan a Google entre 4 y 8 veces más contenido y de 4 a 16 veces más enlaces en el primer byte.

5. Tráfico y oportunidad

No comprobado hoy. Fuente prevista: Ahrefs (cuenta de pago, conector de claude.ai) → Access denied: MCP token is invalid en 2 llamadas. Índice de Bing: site:wallywine.com/products «About 118,000 results» y site:wallywine.com «About 50» — inconsistente, no sirve como cifra.

Al reconectar Ahrefs se entregan: tráfico orgánico mensual estimado y tendencia 24 meses, keywords por posición, top pages, branded vs non-branded, países, DR y dominios de referencia, backlinks rotos, competidores con solape. Con fecha, metodología y rango — nunca presentado como analítica interna.

6. Plan

Quick wins — 30 días

Sin rediseño: código y configuración.

  1. Corregir la hidratación (C1) — es un bug, no una feature.
  2. Menú → colecciones reales en vez de /wines?filter… (C3).
  3. noindex + fuera del sitemap: colecciones internas (A2), /homepage → 301 (A4), /search, sitemap-empty.xml (M2).
  4. Regla de agotados y sacar POS del canal Online Store (C2).
  5. Metadescripción por plantilla para 236 colecciones y PDPs vacíos (A8, A9).
  6. dataLayer.items a arreglo, item_id = SKU, value en view_item (C5). Revisar tag de Meta (C4). Quitar un Hotjar (M8).
  7. Poster + preload=metadata al video del home (A5).
  8. brand desde metafield, sku del variant, sameAs limpio (M5).

Roadmap — 60 a 90 días

Necesita al equipo de Hydrogen.

  • SSR real de PDP y colección + paginación con enlaces (A1). El cambio con más retorno.
  • Consent Mode v2 conectado al Customer Privacy API de Shopify (A11).
  • Consolidación de colecciones: 301 de duplicados, estacionales a URLs perennes; 150–300 palabras por región/varietal (A3).
  • Descripciones estructuradas para los ~5,600 productos en stock; Review/aggregateRating (A9, M5).
  • SEO local: Store con dirección, horario, geo para las 4 tiendas (M6).
  • AEO/GEO: llms.txt, endpoint de catálogo para agentes (A10).
  • Rendimiento: terceros diferidos, JS sin uso, una fuente (M4, A6).
  • Medición completa: view_item_list, select_item, begin_checkout, cross-domain, CAPI con event_id.

Cómo se mide el éxito: cobertura en GSC (indexadas con contenido vs «Rastreada, sin indexar»), clics no-marca en colecciones de región/varietal, LCP de campo en colecciones, e-commerce de GA4 con ítems poblados. Baseline el día 1 del proyecto.

7. Preguntas y accesos para la fase 2

Accesos (lectura basta)

  • Search Console de https://www.wallywine.com/
  • GA4 G-DDRQ9T5MZ2 (DebugView, e-commerce) y GTM GTM-MNRVWXQ
  • Google Ads 1070057468 y Meta Events Manager del pixel 487230146902047
  • Shopify admin: productos activos/agotados por canal, colecciones, metafields
  • Repositorio del storefront Hydrogen — o una llamada con el equipo dev
  • Cloudflare analytics (timeouts, cache)

Preguntas

  1. ¿Quién mantiene el Hydrogen y cuál es el ciclo de deploy?
  2. ¿El header ausente en el home es intencional?
  3. ¿El catálogo online es un espejo del POS? ¿Quién decide qué se publica?
  4. ¿Hay pauta activa en Meta/Google? ¿Con qué conversiones optimiza?
  5. ¿Hay CAPI/app Shopify-Meta aparte del pixel del navegador?
  6. ¿Las colecciones in-stock-*, no-image, retag son de operación diaria?
  7. ¿Existen textos de colección o notas de cata en Sanity que no se imprimen?

8. Recomendaciones comerciales