Diagnóstico público de e-commerce · varredura em 27 de agosto de 2026
Resumo
O que está funcionando
- ✓ 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=200
- ✓ Crawlers verificados legítimos (Bing/IA) alcançam o site (não 403 no WAF)UA matrix: 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=200
- ✓ AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFnenhuma contradição robots-allow × WAF-block nos 10 AI bots testados (GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, Claude-User, PerplexityBot, Perplexity-User, CCBot, meta-externalagent) em /. 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
Pontos críticos
- ✗ Não há host paralelo (http+https ou www+non-www) servindo 200 simultaneamente Críticovariantes→status {"http://portobello.com.br":301,"https://portobello.com.br":301,"http://www.portobello.com.br":200,"https://www.portobello.com.br":200}; 2 servem 200
- ✗ HTTPS em todas as rotas (sem conteúdo servido em HTTP) Críticotodas as entradas http resolvem para https 200 (2 cadeias)
- ✗ LCP dentro do alvo (lab e campo) CríticoLighthouse: https://www.portobello.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2899) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=3778)
Cobertura honesta: medimos 70 de 395 verificações do registro público. 28 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.
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.portobello.com.br/produtos/bleu-de-savoie/bleu-de-savoie/4393/revestimentos/porcelanato/portobello-shop |
✗ LCP dentro do alvo (lab e campo)Lighthouse: https://www.portobello.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2899) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=3778) | Qualidade Técnica do Site | Crítico |
| ✗ CLS dentro do alvo (sem layout shift perceptível)Lighthouse: https://www.portobello.com.br/ — field CUMULATIVE_LAYOUT_SHIFT_SCORE=AVERAGE (p75=11) | Qualidade Técnica do Site | Atenção | |
| ✗ INP dentro do alvo (responsividade à interação)Lighthouse: https://www.portobello.com.br/ — field INTERACTION_TO_NEXT_PAINT=AVERAGE (p75=459) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field INTERACTION_TO_NEXT_PAINT=AVERAGE (p75=487) | Qualidade Técnica do Site | Atenção | |
| Todas as páginas | ✗ Não há host paralelo (http+https ou www+non-www) servindo 200 simultaneamentevariantes→status {"http://portobello.com.br":301,"https://portobello.com.br":301,"http://www.portobello.com.br":200,"https://www.portobello.com.br":200}; 2 servem 200 | 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 | |
| ✗ 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: portobello.com.br 301, www.portobello.com.br 200 (esperado 301/308 permanente) | Qualidade Técnica do Site | Atenção | |
| ✗ Headers de cache/CDN corretos por tipo de páginahome Cache-Control: private, must-revalidate; cf-cache-status: ∅ | Qualidade Técnica do Site | Atenção | |
| ✗ Canonical de host (www vs non-www) declarado consistentementehosts sinalizados (redirects/canonical/sitemap): www.gruposinternet.com.br, www.portobello.com.br (esperado só www.portobello.com.br) | Qualidade Técnica do Site | Atenção | |
| ✗ Content-Security-Policy presente e não trivialmente permissivaCSP presente com diretivas [frame-src, img-src, style-src, font-src, script-src, default-src, child-src, connect-src, frame-ancestors] | Qualidade Técnica do Site | Atenção | |
| ✗ Schema.org em JSON-LD está presente e é sintaticamente válidoJSON-LD presente+parseável em 1/3 URLs | Qualidade Técnica do Site | Atenção | |
| ✗ TTFB dentro do alvoLighthouse: https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field EXPERIMENTAL_TIME_TO_FIRST_BYTE=AVERAGE (p75=1067) | Qualidade Técnica do Site | Atenção | |
| ✗ Total Blocking Time dentro do alvoLighthouse: https://www.portobello.com.br/ — total-blocking-time=0.19 (1,260 ms) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — total-blocking-time=0.14 (1,460 ms) | Qualidade Técnica do Site | Atenção | |
| ✗ Reduzir JavaScript não utilizadoLighthouse: https://www.portobello.com.br/ — unused-javascript=0 (Est savings of 1,402 KiB) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — unused-javascript=0 (Est savings of 2,584 KiB) | Qualidade Técnica do Site | Atenção | |
| ✗ Evitar payloads de rede enormes (peso total da página)Lighthouse: https://www.portobello.com.br/ — total-byte-weight=0.5 (Total size was 4,046 KiB) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — total-byte-weight=0.5 (Total size was 7,032 KiB) | 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
56- ✗Não há host paralelo (http+https ou www+non-www) servindo 200 simultaneamentevariantes→status {"http://portobello.com.br":301,"https://portobello.com.br":301,"http://www.portobello.com.br":200,"https://www.portobello.com.br":200}; 2 servem 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: portobello.com.br 301, www.portobello.com.br 200 (esperado 301/308 permanente)
- ✗Headers de cache/CDN corretos por tipo de páginahome Cache-Control: private, must-revalidate; cf-cache-status: ∅
- ✗Canonical de host (www vs non-www) declarado consistentementehosts sinalizados (redirects/canonical/sitemap): www.gruposinternet.com.br, www.portobello.com.br (esperado só www.portobello.com.br)
- ✗Schema.org em JSON-LD está presente e é sintaticamente válidoJSON-LD presente+parseável em 1/3 URLs
- ✗robots.txt existe, retorna 200 e referencia o sitemaprobots.txt 200 mas sem diretiva Sitemap: — descoberta do sitemap fica dependente de submissão manual
- ✗Sitemap não contém URLs obsoletas (3xx/4xx/5xx)https://www.portobello.com.br/sitemap.xml (nenhum sitemap declarado no robots.txt; tentado o caminho padrão): 3479 URLs em 0 sub-sitemaps; amostra 40: 37 não-200 (301 https://www.portobello.com.br/produtos/ms-barcelona/ms-barcelona-cristal/1415/revestimentos/porcelanato/portobello-shop; 301 https://www.portobello.com.br/produtos/metallica/met-plan/7803/revestimentos/pecas-de-acabamento/portobello-shop; 301 https://www.portobello.com.br/en/coatings/lines/ms-barcelona/portobello-shop; 301 https://www.portobello.com.br/revestimentos/linhas/azuleja/multimarcas; 301 https://www.portobello.com.br/produtos/verre/verre-bleu-azul/7778/revestimentos/acessorios/multimarcas; 301 https://www.portobello.com.br/produtos/ms-barcelona/field-tile/ms-barcelona-cristal/120x120-natural/200900E/portobello-shop); 0 URLs de teste (—).
Consideração
0- ✗LCP dentro do alvo (lab e campo)Lighthouse: https://www.portobello.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2899) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=3778)
- ✗CLS dentro do alvo (sem layout shift perceptível)Lighthouse: https://www.portobello.com.br/ — field CUMULATIVE_LAYOUT_SHIFT_SCORE=AVERAGE (p75=11)
- ✗INP dentro do alvo (responsividade à interação)Lighthouse: https://www.portobello.com.br/ — field INTERACTION_TO_NEXT_PAINT=AVERAGE (p75=459) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field INTERACTION_TO_NEXT_PAINT=AVERAGE (p75=487)
- ✗TTFB dentro do alvoLighthouse: https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field EXPERIMENTAL_TIME_TO_FIRST_BYTE=AVERAGE (p75=1067)
- ✗Total Blocking Time dentro do alvoLighthouse: https://www.portobello.com.br/ — total-blocking-time=0.19 (1,260 ms) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — total-blocking-time=0.14 (1,460 ms)
- ✗Reduzir JavaScript não utilizadoLighthouse: https://www.portobello.com.br/ — unused-javascript=0 (Est savings of 1,402 KiB) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — unused-javascript=0 (Est savings of 2,584 KiB)
- ✗Evitar payloads de rede enormes (peso total da página)Lighthouse: https://www.portobello.com.br/ — total-byte-weight=0.5 (Total size was 4,046 KiB) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — total-byte-weight=0.5 (Total size was 7,032 KiB)
- ✗Reduzir tempo de execução/bootup de JavaScriptLighthouse: https://www.portobello.com.br/ — bootup-time=0 (2.2 s); mainthread-work-breakdown=0 (3.3 s) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — bootup-time=0 (3.3 s); mainthread-work-breakdown=0 (5.2 s)
Compra
29- ✗HTTPS em todas as rotas (sem conteúdo servido em HTTP)todas as entradas http resolvem para https 200 (2 cadeias)
- ✗Content-Security-Policy presente e não trivialmente permissivaCSP presente com diretivas [frame-src, img-src, style-src, font-src, script-src, default-src, child-src, connect-src, frame-ancestors]
- ✗Subresource Integrity (SRI) em scripts de terceirosterceiros sem SRI: 514008732.collect.igodigital.com, tag.goadopt.io, www.google.com · com SRI: 0
- ✗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 (//): 6 em 3 URLs
- ✗Página de erro não vaza stack trace nem detalhes internospágina de erro vaza: x-powered-by: PHP/8.3.8 (HTTP 404)
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✗ Não há host paralelo (http+https ou www+non-www) servindo 200 simultaneamentevariantes→status {"http://portobello.com.br":301,"https://portobello.com.br":301,"http://www.portobello.com.br":200,"https://www.portobello.com.br":200}; 2 servem 200
- Crítico✗ HTTPS em todas as rotas (sem conteúdo servido em HTTP)todas as entradas http resolvem para https 200 (2 cadeias)
- Crítico✗ LCP dentro do alvo (lab e campo)Lighthouse: https://www.portobello.com.br/ — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=2899) | https://www.portobello.com.br/ciclo-da-inovacao/docs-unlimited — field LARGEST_CONTENTFUL_PAINT_MS=AVERAGE (p75=3778)
- 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)
- Atenção✗ Redirect HTTP->HTTPS usa 301 permanente (não 302)http→https: portobello.com.br 301, www.portobello.com.br 200 (esperado 301/308 permanente)
- Atenção✗ Headers de cache/CDN corretos por tipo de páginahome Cache-Control: private, must-revalidate; cf-cache-status: ∅
- Atenção✗ Canonical de host (www vs non-www) declarado consistentementehosts sinalizados (redirects/canonical/sitemap): www.gruposinternet.com.br, www.portobello.com.br (esperado só www.portobello.com.br)
- Atenção✗ Content-Security-Policy presente e não trivialmente permissivaCSP presente com diretivas [frame-src, img-src, style-src, font-src, script-src, default-src, child-src, connect-src, frame-ancestors]
Identidade de marca
“At home, we discover who we are.”
#5897FB#5F3F3F#0075FF#B0B0B0#222222Sofisticado, poético e inspirador, com um viés técnico-profissional quando fala de produtos e canais de venda.
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