Diagnóstico público de e-commerce · varredura em 03 de setembro de 2026
Resumo
O que está funcionando
- ✓ Imagens têm texto alternativo (image-alt)image-alt: sem violações na amostra
- ✓ Campos de formulário têm label associado (label)label: sem violações na amostra
- ✓ Campo não tem múltiplos labels conflitantes (form-field-multiple-labels)form-field-multiple-labels: sem violações na amostra
Pontos críticos
- ✗ Botões têm nome acessível (button-name) Críticobutton-name: 12 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/hombre/ropa/chamarra: 12 elemento(s) — ex.: <button type="button" aria-expanded="false" aria-haspopup="dialog" class="styles_drawer-sku-selector-button-trigger__7odt0">
- ✗ Links têm nome discernível (link-name) Críticolink-name: 2 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <a data-fs-link="true" data-fs-link-variant="default" data-fs-link-size="regular" data-testid="fs-link" class="styles_header-desktop-logo__Wkxj2" href="/">
- ✗ Nome acessível inclui o texto visível (label-content-name-mismatch) Críticolabel-content-name-mismatch: 3 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 2 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="cart-toggle" data-fs-icon-button="true" aria-label="Shopping Cart" data-fs-cart-toggle="true" data-items="0">
Cobertura honesta: medimos 101 de 395 verificações do registro público. 31 verificações ficaram bloqueadas: parte aguarda acesso a dados privados (GA4, Search Console, VTEX) ou entrevista, parte depende de pré-condições de execução.
Capturas da jornada
O que o navegador do nosso agente viu ao percorrer as páginas amostradas, no mesmo carregamento que decidiu as verificações de acessibilidade e rastreamento.



Problemas por página
Cada verificação reprovada, anotada na página onde foi observada e com a evidência literal capturada pelo probe. O título descreve o estado esperado; o ✗ indica que ele não foi atendido.
| Página | Verificação reprovada e evidência | Área | Severidade |
|---|---|---|---|
| Página de produto (PDP) https://www.napapijri.com.mx/chaqueta-anorak-rainforest-next-summer-unisex/p |
✗ LCP dentro do alvo (lab e campo)Lighthouse: https://www.napapijri.com.mx/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2936) | https://www.napapijri.com.mx/chaqueta-anorak-rainforest-next-summer-unisex/p — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2503) | Qualidade Técnica do Site | Crítico |
| Todas as páginas | ✗ Botões têm nome acessível (button-name)button-name: 12 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/hombre/ropa/chamarra: 12 elemento(s) — ex.: <button type="button" aria-expanded="false" aria-haspopup="dialog" class="styles_drawer-sku-selector-button-trigger__7odt0"> | Qualidade Técnica do Site | Crítico |
| ✗ Links têm nome discernível (link-name)link-name: 2 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <a data-fs-link="true" data-fs-link-variant="default" data-fs-link-size="regular" data-testid="fs-link" class="styles_header-desktop-logo__Wkxj2" href="/"> | Qualidade Técnica do Site | Crítico | |
| ✗ Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 3 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 2 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="cart-toggle" data-fs-icon-button="true" aria-label="Shopping Cart" data-fs-cart-toggle="true" data-items="0"> | Qualidade Técnica do Site | Crítico | |
| ✗ Funil completo dispara em ordem (view_item_list -> view_item -> add_to_cart -> begin_checkout -> add_payment_info -> purchase)GA4 dispara page_view e o dataLayer client-side recebeu 13 push com objeto ecommerce nas páginas de produto/listagem amostradas; view_item/view_item_list não observados na carga (eventos de clique e de checkout não são observáveis sem percorrer a compra) | Qualidade de Dados & Tagging | Crítico | |
| ✗ Conteúdo principal está disponível no HTML cru (baixa dependência de JS)HTML cru vazio de conteúdo-chave (invisível a GPTBot/ClaudeBot/PerplexityBot — não executam JS): https://www.napapijri.com.mx/ (5 palavras, ProductLD=false, preço=false); https://www.napapijri.com.mx/hombre/ropa/chamarra (4 palavras, ProductLD=false, preço=false) | Aquisição de Tráfego | Crítico | |
| ✗ Não existem loops de redirect2 cadeias seguidas; finais 0/200; loops: 1 | Qualidade Técnica do Site | Crítico | |
| ✗ Status codes corretos por tipo de recurso (sem soft-404)GET https://www.napapijri.com.mx/zzz-nonexistent-1788360196382-qx → 500 (esperado 404; 200 = soft-404) | Qualidade Técnica do Site | Crítico | |
| ✗ HTTPS em todas as rotas (sem conteúdo servido em HTTP)todas as entradas http resolvem para https 200 (2 cadeias) | Qualidade Técnica do Site | Crítico | |
| ✗ Headings em ordem hierárquica (heading-order)heading-order: 1 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <h3 class="styles_product-summary-name__SjitX">Chamarra Biois color Negro para Hombre</h3> | Qualidade Técnica do Site | Atenção | |
| ✗ Página tem um h1 (page-has-heading-one)page-has-heading-one: 1 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) — ex.: <html dir="ltr" lang="es-MX"> | Qualidade Técnica do Site | Atenção | |
| ✗ Página tem um landmark main (landmark-one-main)landmark-one-main: 2 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <html dir="ltr" lang="es-MX"> | Qualidade Técnica do Site | Atenção | |
| ✗ Todo conteúdo está dentro de landmarks (region)region: 68 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 31 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 37 elemento(s) — ex.: <div class="styles_promise-bar__viewport__kfEsk"> | Qualidade Técnica do Site | Atenção |
Busca por IA (GEO)
Como o ChatGPT, o Perplexity e as respostas de IA do Google conseguem descobrir, entender e citar esta loja, medido em 9 dimensões sobre as 32 verificações de GEO do registro.
Scorecard do funil
A jornada do comprador, etapa a etapa, com o que passou e o que reprovou em cada uma.
Atração
45- ✗Conteúdo principal está disponível no HTML cru (baixa dependência de JS)HTML cru vazio de conteúdo-chave (invisível a GPTBot/ClaudeBot/PerplexityBot — não executam JS): https://www.napapijri.com.mx/ (5 palavras, ProductLD=false, preço=false); https://www.napapijri.com.mx/hombre/ropa/chamarra (4 palavras, ProductLD=false, preço=false)
- ✗Não existem loops de redirect2 cadeias seguidas; finais 0/200; loops: 1
- ✗Status codes corretos por tipo de recurso (sem soft-404)GET https://www.napapijri.com.mx/zzz-nonexistent-1788360196382-qx → 500 (esperado 404; 200 = soft-404)
- ✗Acesso de AI crawlers é governado intencionalmente no robots.txtrobots.txt sem NENHUMA diretiva para AI crawlers (GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, Claude-User, PerplexityBot, Perplexity-User, Google-Extended, CCBot, meta-externalagent, Amazonbot, Applebot-Extended, Bytespider) — acesso de IA não governado (default-allow acidental)
- ✗Redirect HTTP->HTTPS usa 301 permanente (não 302)http→https: napapijri.com.mx 0, www.napapijri.com.mx 301 (esperado 301/308 permanente)
- ✗Canonical de host (www vs non-www) declarado consistentementehosts sinalizados (redirects/canonical/sitemap): napapijri.com.mx, www.napapijri.com.mx (esperado só www.napapijri.com.mx)
- ✗Toda página tem exatamente um H1sem H1: https://www.napapijri.com.mx/, https://www.napapijri.com.mx/hombre/ropa/chamarra; 0/2 URLs com exatamente 1
- ✗robots.txt existe, retorna 200 e referencia o sitemapGET https://www.napapijri.com.mx/robots.txt → 404 — sem robots.txt: a spec trata como allow-all, mas o site abre mão do controle de rastreamento e da declaração do sitemap
Consideração
47- ✗Botões têm nome acessível (button-name)button-name: 12 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/hombre/ropa/chamarra: 12 elemento(s) — ex.: <button type="button" aria-expanded="false" aria-haspopup="dialog" class="styles_drawer-sku-selector-button-trigger__7odt0">
- ✗Links têm nome discernível (link-name)link-name: 2 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <a data-fs-link="true" data-fs-link-variant="default" data-fs-link-size="regular" data-testid="fs-link" class="styles_header-desktop-logo__Wkxj2" href="/">
- ✗Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 3 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 2 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="cart-toggle" data-fs-icon-button="true" aria-label="Shopping Cart" data-fs-cart-toggle="true" data-items="0">
- ✗LCP dentro do alvo (lab e campo)Lighthouse: https://www.napapijri.com.mx/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2936) | https://www.napapijri.com.mx/chaqueta-anorak-rainforest-next-summer-unisex/p — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2503)
- ✗Headings em ordem hierárquica (heading-order)heading-order: 1 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <h3 class="styles_product-summary-name__SjitX">Chamarra Biois color Negro para Hombre</h3>
- ✗Página tem um h1 (page-has-heading-one)page-has-heading-one: 1 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) — ex.: <html dir="ltr" lang="es-MX">
- ✗Página tem um landmark main (landmark-one-main)landmark-one-main: 2 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <html dir="ltr" lang="es-MX">
- ✗Todo conteúdo está dentro de landmarks (region)region: 68 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 31 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 37 elemento(s) — ex.: <div class="styles_promise-bar__viewport__kfEsk">
Compra
21- ✗HTTPS em todas as rotas (sem conteúdo servido em HTTP)todas as entradas http resolvem para https 200 (2 cadeias)
- ✗HSTS com max-age >= 1 ano, includeSubDomains e preloadStrict-Transport-Security: AUSENTE
- ✗Content-Security-Policy presente e não trivialmente permissivaContent-Security-Policy AUSENTE
- ✗Proteção contra clickjacking (X-Frame-Options ou frame-ancestors)X-Frame-Options: ∅; CSP frame-ancestors: false
- ✗Subresource Integrity (SRI) em scripts de terceirosterceiros sem SRI: io2.vtex.com, fonts.googleapis.com · com SRI: 0
- ✗X-Content-Type-Options nosniff presenteX-Content-Type-Options: AUSENTE
- ✗Referrer-Policy restritivo definidoReferrer-Policy: AUSENTE
- ✗Permissions-Policy restringe APIs sensíveis do browserPermissions-Policy: AUSENTE
Retenção
não medidoNenhuma verificação desta etapa pôde ser medida só com dados públicos.
Correções ao alcance
Verificações reprovadas que o time de implementação resolve sem depender do cliente ou de terceiros, em ordem de severidade. Cada título descreve o estado esperado que hoje não é atendido.
- Crítico✗ Botões têm nome acessível (button-name)button-name: 12 elemento(s) em 1 página(s) — https://www.napapijri.com.mx/hombre/ropa/chamarra: 12 elemento(s) — ex.: <button type="button" aria-expanded="false" aria-haspopup="dialog" class="styles_drawer-sku-selector-button-trigger__7odt0">
- Crítico✗ Links têm nome discernível (link-name)link-name: 2 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 1 elemento(s) — ex.: <a data-fs-link="true" data-fs-link-variant="default" data-fs-link-size="regular" data-testid="fs-link" class="styles_header-desktop-logo__Wkxj2" href="/">
- Crítico✗ Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 3 elemento(s) em 2 página(s) — https://www.napapijri.com.mx/: 1 elemento(s) · https://www.napapijri.com.mx/hombre/ropa/chamarra: 2 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="cart-toggle" data-fs-icon-button="true" aria-label="Shopping Cart" data-fs-cart-toggle="true" data-items="0">
- Crítico✗ Funil completo dispara em ordem (view_item_list -> view_item -> add_to_cart -> begin_checkout -> add_payment_info -> purchase)GA4 dispara page_view e o dataLayer client-side recebeu 13 push com objeto ecommerce nas páginas de produto/listagem amostradas; view_item/view_item_list não observados na carga (eventos de clique e de checkout não são observáveis sem percorrer a compra)
- Crítico✗ Conteúdo principal está disponível no HTML cru (baixa dependência de JS)HTML cru vazio de conteúdo-chave (invisível a GPTBot/ClaudeBot/PerplexityBot — não executam JS): https://www.napapijri.com.mx/ (5 palavras, ProductLD=false, preço=false); https://www.napapijri.com.mx/hombre/ropa/chamarra (4 palavras, ProductLD=false, preço=false)
- Crítico✗ Não existem loops de redirect2 cadeias seguidas; finais 0/200; loops: 1
- Crítico✗ Status codes corretos por tipo de recurso (sem soft-404)GET https://www.napapijri.com.mx/zzz-nonexistent-1788360196382-qx → 500 (esperado 404; 200 = soft-404)
- Crítico✗ HTTPS em todas as rotas (sem conteúdo servido em HTTP)todas as entradas http resolvem para https 200 (2 cadeias)
Identidade de marca
#B42318#BC4A1A#454B5B#FFFFFF#000000Comercial, directo y funcional, orientado a la venta de productos
Próximo passo
Isto é só a parte pública.
Este relatório usou apenas o que qualquer visitante consegue observar de fora: páginas públicas, dados estruturados, sinais de crawler e testes de navegador. O diagnóstico completo conecta GA4, Search Console e a plataforma da loja para medir o funil real, achar onde a receita escapa e dimensionar cada correção em reais.
Falar com a deco.cx