Diagnóstico público de e-commerce · varredura em 18 de agosto de 2026
Resumo
O que está funcionando
- ✓ Participação no UCP (manifest /.well-known/ucp) é conhecida e intencionalManifest UCP (Google Universal Commerce Protocol) ausente (/.well-known/ucp → 200, 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→200, /api/mcp→400 — 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 (200) — sem impacto: nenhum engine principal lê o arquivo
Pontos críticos
- ✗ Imagens têm texto alternativo (image-alt) Críticoimage-alt: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <img src="https://decoims.com/..." width="633" height="749" sizes="(min-width: 1200px) ..." loading="lazy" fetchpriority="low" data-fresh-disable-l...="true" srcset="https://decoims.com/..." class="-z-10 object-cover a...">
- ✗ Alvos de toque têm tamanho adequado (target-size) Críticotarget-size: 2 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-hero-banner-v2-bullet="true" type="button" aria-controls="heroBannerV2-slide1" aria-label="Ir para o slide 1" tabindex="0" aria-current="true" class="pagination-bullet pagination-bullet-active">
- ✗ 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://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-qa-cart-icon="true" aria-label="open cart" data-deco="false" type="button" class="no-animation z-10 w-fit h-12 ">
Cobertura honesta: medimos 107 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 |
|---|---|---|---|
| Home https://www.osklen.com.br/ |
✗ LCP dentro do alvo (lab e campo)Lighthouse: https://www.osklen.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2722) | Qualidade Técnica do Site | Crítico |
| ✗ INP dentro do alvo (responsividade à interação)Lighthouse: https://www.osklen.com.br/ — field INTERACTION_TO_NEXT_PAINT=AVERAGE (p75=221) | Qualidade Técnica do Site | Atenção | |
| Todas as páginas | ✗ Imagens têm texto alternativo (image-alt)image-alt: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <img src="https://decoims.com/..." width="633" height="749" sizes="(min-width: 1200px) ..." loading="lazy" fetchpriority="low" data-fresh-disable-l...="true" srcset="https://decoims.com/..." class="-z-10 object-cover a..."> | Qualidade Técnica do Site | Crítico |
| ✗ Alvos de toque têm tamanho adequado (target-size)target-size: 2 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-hero-banner-v2-bullet="true" type="button" aria-controls="heroBannerV2-slide1" aria-label="Ir para o slide 1" tabindex="0" aria-current="true" class="pagination-bullet pagination-bullet-active"> | 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://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-qa-cart-icon="true" aria-label="open cart" data-deco="false" type="button" class="no-animation z-10 w-fit h-12 "> | Qualidade Técnica do Site | Crítico | |
| ✗ Status codes corretos por tipo de recurso (sem soft-404)GET https://www.osklen.com.br/zzz-nonexistent-1783843518588-qx → 200 (esperado 404; 200 = soft-404) | Qualidade Técnica do Site | Crítico | |
| ✗ Todo conteúdo está dentro de landmarks (region)region: 16 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 16 elemento(s) — ex.: <div class="text flex w-fit md:min-h-[47px] md:h-[47px] min-h-[42px] h-[42px] pl-[10px] pr-[12px] rounded-[14px] gap-[6px] md:gap-2 transition-all items-center"> | Qualidade Técnica do Site | Atenção | |
| ✗ Meta viewport permite zoom (meta-viewport)meta-viewport: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <meta name="viewport" content="height=device-height, width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, shrink-to-fit=no, viewport-fit=cover"> | Qualidade Técnica do Site | Atenção | |
| ✗ Consent Mode controla ad_storage/analytics_storagenenhum comando gtag('consent','default') detectado com tags GA4 disparando — Google Consent Mode não configurado (ad_storage/analytics_storage podem não ser governados) | Qualidade de Dados & Tagging | Atenção | |
| ✗ WAF presente sem bloquear bots legítimos (Googlebot etc.)UA matrix home: {"googlebot":403,"bingbot":403,"gptbot":403} — WAF bloqueia bingbot/gptbot enquanto Googlebot 200 | 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 | |
| ✗ Redirect HTTP->HTTPS usa 301 permanente (não 302)http→https: apex 307, www 301 (esperado 301/308 permanente) | Qualidade Técnica do Site | Atenção | |
| ✗ Headers de cache/CDN corretos por tipo de páginahome Cache-Control: no-store, no-cache, must-revalidate; cf-cache-status: BYPASS | Qualidade Técnica do Site | Atenção | |
| ✗ Compressão (gzip/brotli) habilitada nas respostas de textoAccept-Encoding: br,gzip → content-encoding: ∅ (sem compressão) | 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
44- ✗Status codes corretos por tipo de recurso (sem soft-404)GET https://www.osklen.com.br/zzz-nonexistent-1783843518588-qx → 200 (esperado 404; 200 = soft-404)
- ✗WAF presente sem bloquear bots legítimos (Googlebot etc.)UA matrix home: {"googlebot":403,"bingbot":403,"gptbot":403} — WAF bloqueia bingbot/gptbot enquanto Googlebot 200
- ✗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: apex 307, www 301 (esperado 301/308 permanente)
- ✗Headers de cache/CDN corretos por tipo de páginahome Cache-Control: no-store, no-cache, must-revalidate; cf-cache-status: BYPASS
- ✗Compressão (gzip/brotli) habilitada nas respostas de textoAccept-Encoding: br,gzip → content-encoding: ∅ (sem compressão)
- ✗Toda página tem exatamente um H1H1 por página: 0 (esperado 1)
- ✗Não há múltiplos <title>/<description>/<head> no documentotitle/desc/head duplicados: https://www.osklen.com.br/
Consideração
56- ✗Imagens têm texto alternativo (image-alt)image-alt: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <img src="https://decoims.com/..." width="633" height="749" sizes="(min-width: 1200px) ..." loading="lazy" fetchpriority="low" data-fresh-disable-l...="true" srcset="https://decoims.com/..." class="-z-10 object-cover a...">
- ✗Alvos de toque têm tamanho adequado (target-size)target-size: 2 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-hero-banner-v2-bullet="true" type="button" aria-controls="heroBannerV2-slide1" aria-label="Ir para o slide 1" tabindex="0" aria-current="true" class="pagination-bullet pagination-bullet-active">
- ✗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://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-qa-cart-icon="true" aria-label="open cart" data-deco="false" type="button" class="no-animation z-10 w-fit h-12 ">
- ✗LCP dentro do alvo (lab e campo)Lighthouse: https://www.osklen.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2722)
- ✗Todo conteúdo está dentro de landmarks (region)region: 16 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 16 elemento(s) — ex.: <div class="text flex w-fit md:min-h-[47px] md:h-[47px] min-h-[42px] h-[42px] pl-[10px] pr-[12px] rounded-[14px] gap-[6px] md:gap-2 transition-all items-center">
- ✗Meta viewport permite zoom (meta-viewport)meta-viewport: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <meta name="viewport" content="height=device-height, width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, shrink-to-fit=no, viewport-fit=cover">
- ✗INP dentro do alvo (responsividade à interação)Lighthouse: https://www.osklen.com.br/ — field INTERACTION_TO_NEXT_PAINT=AVERAGE (p75=221)
- ✗Total Blocking Time dentro do alvoLighthouse: https://www.osklen.com.br/ — total-blocking-time=0.27 (1,010 ms)
Compra
25- ✗HSTS com max-age >= 1 ano, includeSubDomains e preloadStrict-Transport-Security: AUSENTE
- ✗Content-Security-Policy presente e não trivialmente permissivaCSP presente com diretivas [frame-ancestors] — só frame-ancestors, zero mitigação XSS/skimmer
- ✗Subresource Integrity (SRI) em scripts de terceirosterceiros sem SRI: s.lilstts.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
- ✗Sem URLs protocol-relative (//) em recursosrecursos protocol-relative (//): 1 em 1 URLs
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✗ Imagens têm texto alternativo (image-alt)image-alt: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <img src="https://decoims.com/..." width="633" height="749" sizes="(min-width: 1200px) ..." loading="lazy" fetchpriority="low" data-fresh-disable-l...="true" srcset="https://decoims.com/..." class="-z-10 object-cover a...">
- Crítico✗ Alvos de toque têm tamanho adequado (target-size)target-size: 2 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-hero-banner-v2-bullet="true" type="button" aria-controls="heroBannerV2-slide1" aria-label="Ir para o slide 1" tabindex="0" aria-current="true" class="pagination-bullet pagination-bullet-active">
- 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://www.osklen.com.br/: 2 elemento(s) — ex.: <button data-qa-cart-icon="true" aria-label="open cart" data-deco="false" type="button" class="no-animation z-10 w-fit h-12 ">
- Crítico✗ Status codes corretos por tipo de recurso (sem soft-404)GET https://www.osklen.com.br/zzz-nonexistent-1783843518588-qx → 200 (esperado 404; 200 = soft-404)
- Crítico✗ LCP dentro do alvo (lab e campo)Lighthouse: https://www.osklen.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2722)
- Atenção✗ Todo conteúdo está dentro de landmarks (region)region: 16 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 16 elemento(s) — ex.: <div class="text flex w-fit md:min-h-[47px] md:h-[47px] min-h-[42px] h-[42px] pl-[10px] pr-[12px] rounded-[14px] gap-[6px] md:gap-2 transition-all items-center">
- Atenção✗ Meta viewport permite zoom (meta-viewport)meta-viewport: 1 elemento(s) em 1 página(s) — https://www.osklen.com.br/: 1 elemento(s) — ex.: <meta name="viewport" content="height=device-height, width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, shrink-to-fit=no, viewport-fit=cover">
- Atenção✗ Consent Mode controla ad_storage/analytics_storagenenhum comando gtag('consent','default') detectado com tags GA4 disparando — Google Consent Mode não configurado (ad_storage/analytics_storage podem não ser governados)
Catálogo
Mais vendidos do catálogo público, de um catálogo com 2.158 itens.
Identidade de marca
“We Are Nature”
#67738B#B2B9C7#353945#F8F8F8#333333Sofisticado, poético e conceitual, com um toque contemporâneo e sensorial
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






