Town&Country Brasiltcsurf.com.br
ShopifyCloudflareGoogle Tag Manager

Diagnóstico público de e-commerce · varredura em 13 de julho de 2026

01

Resumo

54
Fraco
76 aprovados · 35 reprovados · 31 bloqueados
SEO55
Fraco · 18 verificações medidas
Busca por IA (GEO)54
Fraco · 10 verificações medidas
Performance50
Fraco · 16 verificações medidas
Acessibilidade64
Precisa de atenção · 31 verificações medidas
Segurança38
Crítico · 13 verificações medidas
Analytics & Funil40
Fraco · 6 verificações medidas
Infraestrutura52
Fraco · 16 verificações medidas

O que está funcionando

  • ✓ Participação no UCP (manifest /.well-known/ucp) é conhecida e intencionalManifest UCP (Google Universal Commerce Protocol) presente e válido em /.well-known/ucp. Site sinaliza participação no UCP — checkout agêntico no AI Mode/Gemini.
  • ✓ 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 presente (# Agent Instructions — Town & Country Brasil…) — registrado por completude; NENHUM engine principal lê llms.txt, não tratar como lever

Pontos críticos

  • ✗ Crawlers verificados legítimos (Bing/IA) alcançam o site (não 403 no WAF) CríticoWAF devolve meta-externalagent=429 enquanto Googlebot=200 — Bing + AI search cegos ao site
  • ✗ Botões têm nome acessível (button-name) Críticobutton-name: 2 elemento(s) em 1 página(s) — https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) — ex.: <button type="button" class="btn btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
  • ✗ Links têm nome discernível (link-name) Críticolink-name: 3 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 1 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 1 elemento(s) · https://tcsurf.com.br/collections/masculino: 1 elemento(s) — ex.: <a href="/" itemprop="url" class="site-header__logo-link" style="padding-top: 100.0%">

Cobertura honesta: medimos 110 de 387 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.

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 · /
Página de produto
Página de produto · /products/camiseta-manga-curta-surface-town-country
Vitrine de categoria
Vitrine de categoria · /collections/masculino
Home · mobile (390px)
Home · mobile (390px) · /
Página de produto · mobile (390px)
Página de produto · mobile (390px) · /products/camiseta-manga-curta-surface-town-country
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
Todas as páginas ✗ Botões têm nome acessível (button-name)button-name: 2 elemento(s) em 1 página(s) — https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) — ex.: <button type="button" class="btn btn--body btn--circle js-photoswipe__zoom product__photo-zoom"> Qualidade Técnica do Site Crítico
✗ Links têm nome discernível (link-name)link-name: 3 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 1 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 1 elemento(s) · https://tcsurf.com.br/collections/masculino: 1 elemento(s) — ex.: <a href="/" itemprop="url" class="site-header__logo-link" style="padding-top: 100.0%"> Qualidade Técnica do Site Crítico
✗ Elementos aria-hidden não contêm foco (aria-hidden-focus)aria-hidden-focus: 14 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 10 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) · https://tcsurf.com.br/collections/masculino: 2 elemento(s) — ex.: <div id="AnnouncementSlide-announcement-1" class="announcement-slider__slide" data-index="0" style="position: absolute; left: 0px; transform: translateX(0%);" aria-hidden="true"><a class="announcement-link" href="#"><span class="announcement-text">5% OFF Pix e Boleto</span></a></div> 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 mas nenhum evento de ecommerce (view_item/view_item_list/add_to_cart…) foi observado nas páginas de produto/listagem amostradas — funil de receita invisível no GA4 Qualidade de Dados & Tagging Crítico
✗ Crawlers verificados legítimos (Bing/IA) alcançam o site (não 403 no WAF)WAF devolve meta-externalagent=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: meta-externalagent=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
✗ Domínio apex redireciona para o host www canônicohttps://tcsurf.com.br/ serve 200 em paralelo com www (host duplicado dilui canônico) 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://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 1 elemento(s) — ex.: <h3 class="section-header__title"> Relacionados </h3> Qualidade Técnica do Site Atenção
✗ Todo conteúdo está dentro de landmarks (region)region: 6 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 2 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) · https://tcsurf.com.br/collections/masculino: 2 elemento(s) — ex.: <div id="AnnouncementSlide-announcement-0" class="announcement-slider__slide is-selected" data-index="1" style="position: absolute; left: 0px; transform: translateX(100%);"> 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=200 oai-searchbot=200 chatgpt-user=200 claudebot=200 claude-searchbot=200 claude-user=200 perplexitybot=200 perplexity-user=200 ccbot=200 meta-externalagent=429 — WAF bloqueia meta-externalagent 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
✗ Headers de cache/CDN corretos por tipo de páginahome Cache-Control: ∅; cf-cache-status: DYNAMIC 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 5 verificações medidas · 3 reprovadas
02Conteúdo legível por máquinas100
2 de 2 verificações medidas
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 agents100
1 de 3 verificações medidas
08Prontidão agêntica (UCP/MCP)100
2 de 2 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

54
  • AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFrobots.txt permite mas CDN/WAF bloqueia: meta-externalagent=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
  • Domínio apex redireciona para o host www canônicohttps://tcsurf.com.br/ 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=200 oai-searchbot=200 chatgpt-user=200 claudebot=200 claude-searchbot=200 claude-user=200 perplexitybot=200 perplexity-user=200 ccbot=200 meta-externalagent=429 — WAF bloqueia meta-externalagent
  • 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)
  • Headers de cache/CDN corretos por tipo de páginahome Cache-Control: ∅; cf-cache-status: DYNAMIC
  • 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)
  • <title> tem comprimento adequado (não truncado nem curto demais)title lens 57/81/43 (alvo 10–70 chars ≈ sem truncar na SERP)
  • Meta description está presentemeta description 2/3 URLs
Etapa 2

Consideração

59
  • Botões têm nome acessível (button-name)button-name: 2 elemento(s) em 1 página(s) — https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) — ex.: <button type="button" class="btn btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
  • Links têm nome discernível (link-name)link-name: 3 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 1 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 1 elemento(s) · https://tcsurf.com.br/collections/masculino: 1 elemento(s) — ex.: <a href="/" itemprop="url" class="site-header__logo-link" style="padding-top: 100.0%">
  • Elementos aria-hidden não contêm foco (aria-hidden-focus)aria-hidden-focus: 14 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 10 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) · https://tcsurf.com.br/collections/masculino: 2 elemento(s) — ex.: <div id="AnnouncementSlide-announcement-1" class="announcement-slider__slide" data-index="0" style="position: absolute; left: 0px; transform: translateX(0%);" aria-hidden="true"><a class="announcement-link" href="#"><span class="announcement-text">5% OFF Pix e Boleto</span></a></div>
  • Headings em ordem hierárquica (heading-order)heading-order: 1 elemento(s) em 1 página(s) — https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 1 elemento(s) — ex.: <h3 class="section-header__title"> Relacionados </h3>
  • Todo conteúdo está dentro de landmarks (region)region: 6 elemento(s) em 3 página(s) — https://tcsurf.com.br/: 2 elemento(s) · https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country: 2 elemento(s) · https://tcsurf.com.br/collections/masculino: 2 elemento(s) — ex.: <div id="AnnouncementSlide-announcement-0" class="announcement-slider__slide is-selected" data-index="1" style="position: absolute; left: 0px; transform: translateX(100%);">
  • Total Blocking Time dentro do alvoLighthouse: https://tcsurf.com.br/ — total-blocking-time=0.45 (660 ms) | https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country — total-blocking-time=0.66 (410 ms)
  • Reduzir JavaScript não utilizadoLighthouse: https://tcsurf.com.br/ — unused-javascript=0 (Est savings of 729 KiB) | https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country — unused-javascript=0 (Est savings of 743 KiB) | https://tcsurf.com.br/collections/masculino — unused-javascript=0 (Est savings of 725 KiB)
  • Evitar payloads de rede enormes (peso total da página)Lighthouse: https://tcsurf.com.br/ — total-byte-weight=0.5 (Total size was 3,337 KiB) | https://tcsurf.com.br/products/camiseta-manga-curta-surface-town-country — total-byte-weight=0.5 (Total size was 3,505 KiB) | https://tcsurf.com.br/collections/masculino — total-byte-weight=0.5 (Total size was 3,446 KiB)
Etapa 3

Compra

38
  • HSTS com max-age >= 1 ano, includeSubDomains e preloadStrict-Transport-Security: max-age=7889238 (max-age=7889238)
  • Content-Security-Policy presente e não trivialmente permissivaCSP presente com diretivas [block-all-mixed-content, frame-ancestors, upgrade-insecure-requests] — só frame-ancestors, zero mitigação XSS/skimmer
  • Subresource Integrity (SRI) em scripts de terceirosterceiros sem SRI: cdn.shopify.com, a.klaviyo.com · com SRI: 3
  • 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
  • Sem URLs protocol-relative (//) em recursosrecursos protocol-relative (//): 171 em 3 URLs
  • HTTPS em todas as rotas (sem conteúdo servido em HTTP)
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

“Stoke & Aloha desde 1971”

#D02E2E
#56AD6A
#8ACBDF
#FFFFFF
#000000

Descontraído, autêntico e aspiracional, com forte apelo ao lifestyle de surf e à herança havaiana da marca

AutênticoDescontraídoAspiracionalTradicionalVibrante
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