Lar Plásticoslarplasticos.vtex.app
VTEXNext.jsFastStoreAmazon CloudFront

Diagnóstico público de e-commerce · varredura em 24 de agosto de 2026

01

Resumo

53
Fraco
67 aprovados · 33 reprovados · 34 bloqueados
Funil de Conversão & Experiência
não medido · 1 verificações (amostra insuficiente para nota)
Qualidade Técnica do Site56
Fraco · 88 verificações medidas
Qualidade de Dados & Tagging
não medido · 1 verificações (amostra insuficiente para nota)
Aquisição de Tráfego36
Crítico · 9 verificações medidas

O que está funcionando

  • ✓ Participação no UCP (manifest /.well-known/ucp) é conhecida e intencionalManifest UCP (Google Universal Commerce Protocol) ausente (/.well-known/ucp → 404, corpo HTML/soft-404) — padrão emergente, ausência NÃO é defeito; registrar para inventário
  • ✓ Exposição de catálogo via MCP (se existir) é descobrível e válidanenhum endpoint MCP em /.well-known/mcp/server.json→404, /api/mcp→404 — padrão emergente (Shopify storefront MCP, SEP server-card), ausência NÃO é defeito
  • ✓ llms.txt (se presente) é auditado apenas por completude/llms.txt ausente (404) — sem impacto: nenhum engine principal lê o arquivo

Pontos críticos

  • ✗ Crawlers verificados legítimos (Bing/IA) alcançam o site (não 403 no WAF) CríticoWAF devolve gptbot=429, claude-searchbot=429, ccbot=429 enquanto Googlebot=200 — Bing + AI search cegos ao site
  • ✗ Botões têm nome acessível (button-name) Críticobutton-name: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="fs-search-button" data-fs-icon-button="true" data-fs-search-input-field-submit-button="true" type="submit">
  • ✗ Nome acessível inclui o texto visível (label-content-name-mismatch) Críticolabel-content-name-mismatch: 2 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 2 elemento(s) — ex.: <a data-fs-button="true" data-fs-link-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="fs-link-button" href="/login" data-fs-button-signin-link="true" class="text__title-mini" aria-label="User">

Cobertura honesta: medimos 99 de 395 verificações do registro público. 34 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.

02

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.

Home
Home · /
Home · mobile (390px)
Home · mobile (390px) · /
03

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áginaVerificação reprovada e evidênciaÁreaSeveridade
Home
https://larplasticos.vtex.app/
✗ LCP dentro do alvo (lab e campo)Lighthouse: https://larplasticos.vtex.app/ — largest-contentful-paint=0.11 (6.2 s) Qualidade Técnica do Site Crítico
Todas as páginas ✗ Botões têm nome acessível (button-name)button-name: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="fs-search-button" data-fs-icon-button="true" data-fs-search-input-field-submit-button="true" type="submit"> Qualidade Técnica do Site Crítico
✗ Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 2 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 2 elemento(s) — ex.: <a data-fs-button="true" data-fs-link-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="fs-link-button" href="/login" data-fs-button-signin-link="true" class="text__title-mini" aria-label="User"> Qualidade Técnica do Site Crítico
✗ Crawlers verificados legítimos (Bing/IA) alcançam o site (não 403 no WAF)WAF devolve gptbot=429, claude-searchbot=429, ccbot=429 enquanto Googlebot=200 — Bing + AI search cegos ao site Funil de Conversão & Experiência Crítico
✗ AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFrobots.txt permite mas CDN/WAF bloqueia: GPTBot=429, Claude-SearchBot=429, CCBot=429 enquanto browser=200 — site invisível a esses engines apesar do robots.txt limpo. método: GET com UA spoofado (IP não-oficial) — 4xx/challenge ao UA prova bloqueio por UA-string, o mesmo mecanismo que cega o bot real; WAFs que validam IP podem divergir Aquisição de Tráfego 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://larplasticos.vtex.app/ (5 palavras, ProductLD=false, preço=false) Aquisição de Tráfego Crítico
✗ Domínio apex redireciona para o host www canônicohttps://larplasticos.vtex.app/ serve 200 em paralelo com www (host duplicado dilui canônico) Qualidade Técnica do Site Crítico
✗ Página tem um h1 (page-has-heading-one)page-has-heading-one: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <html dir="ltr" lang="pt-BR"> Qualidade Técnica do Site Atenção
✗ Página tem um landmark main (landmark-one-main)landmark-one-main: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <html dir="ltr" lang="pt-BR"> Qualidade Técnica do Site Atenção
✗ Todo conteúdo está dentro de landmarks (region)region: 9 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 9 elemento(s) — ex.: <a href="https://wa.me/551144166868?text=Ol%C3%A1%2C%20vim%20da%20loja%20e%20gostaria%20de%20mais%20informa%C3%A7%C3%B5es!" target="_blank" rel="noopener noreferrer" aria-label="Fale conosco pelo WhatsApp" class="whatsapp-button"> Qualidade Técnica do Site Atenção
✗ WAF presente sem bloquear bots legítimos (Googlebot etc.)UA×path (GET /): browser=200 googlebot=200 bingbot=200 gptbot=429 oai-searchbot=200 chatgpt-user=200 claudebot=200 claude-searchbot=429 claude-user=200 perplexitybot=200 perplexity-user=200 ccbot=429 meta-externalagent=200 — WAF bloqueia gptbot/claude-searchbot/ccbot Qualidade Técnica do Site Atenção
✗ 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) Aquisição de Tráfego Atenção
✗ Registros de autenticação de e-mail (SPF/DKIM/DMARC) presentesSPF AUSENTE; DMARC AUSENTE; DKIM selector não descoberto (testados: google/default/k1/s1/selector1) Qualidade Técnica do Site Atenção
04

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.

01Rastreabilidade & governança de crawlers25
5 de 6 verificações medidas · 3 reprovadas
02Conteúdo legível por máquinas25
2 de 2 verificações medidas · 1 reprovadas
03Prontidão para query fan-outnão medido
0 de 3 verificações medidas
04Conteúdo não-commodity & frescornão medido
0 de 3 verificações medidas
05Entidade & presença off-sitenão medido
0 de 6 verificações medidas
06Dados estruturadosnão medido
0 de 2 verificações medidas
07Feeds & shopping agentsnão medido
0 de 3 verificações medidas
08Prontidão agêntica (UCP/MCP/WebMCP/ACP)não medido
2 de 4 verificações medidas
09Medição & monitoramento de IAnão medido
0 de 6 verificações medidas
05

Scorecard do funil

A jornada do comprador, etapa a etapa, com o que passou e o que reprovou em cada uma.

Etapa 1

Atração

48
  • AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFrobots.txt permite mas CDN/WAF bloqueia: GPTBot=429, Claude-SearchBot=429, CCBot=429 enquanto browser=200 — site invisível a esses engines apesar do robots.txt limpo. método: GET com UA spoofado (IP não-oficial) — 4xx/challenge ao UA prova bloqueio por UA-string, o mesmo mecanismo que cega o bot real; WAFs que validam IP podem divergir
  • 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://larplasticos.vtex.app/ (5 palavras, ProductLD=false, preço=false)
  • Domínio apex redireciona para o host www canônicohttps://larplasticos.vtex.app/ serve 200 em paralelo com www (host duplicado dilui canônico)
  • WAF presente sem bloquear bots legítimos (Googlebot etc.)UA×path (GET /): browser=200 googlebot=200 bingbot=200 gptbot=429 oai-searchbot=200 chatgpt-user=200 claudebot=200 claude-searchbot=429 claude-user=200 perplexitybot=200 perplexity-user=200 ccbot=429 meta-externalagent=200 — WAF bloqueia gptbot/claude-searchbot/ccbot
  • 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)
  • Registros de autenticação de e-mail (SPF/DKIM/DMARC) presentesSPF AUSENTE; DMARC AUSENTE; DKIM selector não descoberto (testados: google/default/k1/s1/selector1)
  • Toda página tem exatamente um H1H1 por página: 0 (esperado 1)
  • Sitemap não contém URLs obsoletas (3xx/4xx/5xx)GET https://larplasticos.vtex.app/sitemap.xml → 404 (sitemap inacessível)
Etapa 2

Consideração

65
  • Botões têm nome acessível (button-name)button-name: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="fs-search-button" data-fs-icon-button="true" data-fs-search-input-field-submit-button="true" type="submit">
  • Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 2 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 2 elemento(s) — ex.: <a data-fs-button="true" data-fs-link-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="fs-link-button" href="/login" data-fs-button-signin-link="true" class="text__title-mini" aria-label="User">
  • LCP dentro do alvo (lab e campo)Lighthouse: https://larplasticos.vtex.app/ — largest-contentful-paint=0.11 (6.2 s)
  • Página tem um h1 (page-has-heading-one)page-has-heading-one: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <html dir="ltr" lang="pt-BR">
  • Página tem um landmark main (landmark-one-main)landmark-one-main: 1 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 1 elemento(s) — ex.: <html dir="ltr" lang="pt-BR">
  • Todo conteúdo está dentro de landmarks (region)region: 9 elemento(s) em 1 página(s) — https://larplasticos.vtex.app/: 9 elemento(s) — ex.: <a href="https://wa.me/551144166868?text=Ol%C3%A1%2C%20vim%20da%20loja%20e%20gostaria%20de%20mais%20informa%C3%A7%C3%B5es!" target="_blank" rel="noopener noreferrer" aria-label="Fale conosco pelo WhatsApp" class="whatsapp-button">
  • Reduzir JavaScript não utilizadoLighthouse: https://larplasticos.vtex.app/ — unused-javascript=0 (Est savings of 70 KiB)
  • FCP dentro do alvoLighthouse: https://larplasticos.vtex.app/ — first-contentful-paint=0.85 (2.0 s)
Etapa 3

Compra

29
  • 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 · 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
  • Isolamento cross-origin (COOP/COEP/CORP) configuradosem COOP/COEP/CORP — isolamento cross-origin ausente
Etapa 4

Retenção

não medido

Nenhuma verificação desta etapa pôde ser medida só com dados públicos.

06

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.

07

Identidade de marca

#0000EE
#3897F0
#09C72C
#FFFFFF
#000000

Direto, promocional e prático, focado em custo-benefício e conversão rápida

diretoeconômicopráticoconfiávelacessível
08

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