Diagnóstico público de e-commerce · varredura em 01 de setembro de 2026
Resumo
O que está funcionando
- ✓ Imagens têm texto alternativo (image-alt)image-alt: 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
- ✓ Documento tem título descritivo (document-title)document-title: sem violações na amostra
Pontos críticos
- ✗ Botões têm nome acessível (button-name) Críticobutton-name: 2 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 2 elemento(s) — ex.: <button type="submit" class="button-submit"> <svg class="icon"> <use xlink:href="#icon-search"></use> </svg> </button>
- ✗ Links têm nome discernível (link-name) Críticolink-name: 11 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 11 elemento(s) — ex.: <a href="/conta" data-popup-login=""> <svg class="icon"> <use xlink:href="#icon-account"></use> </svg> </a>
- ✗ Campos de formulário têm label associado (label) Críticolabel: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <input autocomplete="off" name="vnda" tabindex="-1" type="text" style="">
Cobertura honesta: medimos 89 de 395 verificações do registro público. 44 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.desmobilia.com.br/ |
✗ Campos de formulário têm label associado (label)label: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <input autocomplete="off" name="vnda" tabindex="-1" type="text" style=""> | Qualidade Técnica do Site | Crítico |
| ✗ Formulários enviam via POST sobre HTTPSforms sensíveis POST+https: 0/2 | Qualidade Técnica do Site | Crítico | |
| Todas as páginas | ✗ Botões têm nome acessível (button-name)button-name: 2 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 2 elemento(s) — ex.: <button type="submit" class="button-submit"> <svg class="icon"> <use xlink:href="#icon-search"></use> </svg> </button> | Qualidade Técnica do Site | Crítico |
| ✗ Links têm nome discernível (link-name)link-name: 11 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 11 elemento(s) — ex.: <a href="/conta" data-popup-login=""> <svg class="icon"> <use xlink:href="#icon-account"></use> </svg> </a> | Qualidade Técnica do Site | Crítico | |
| ✗ Contraste de cor atende WCAG AA (color-contrast)color-contrast: 25 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 25 elemento(s) — ex.: <input name="q" id="input-search" placeholder="Pesquisar" required="" type="search" style=""> | Qualidade Técnica do Site | Crítico | |
| ✗ Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <a class="olist-link" aria-label="Ir para o site da Olist" href="//www.vnda.com.br" rel="noopener" target="_blank"> <span class="text">Technology:</span> <svg class="olist icon"> <use href="#logo-olist"></use> </svg> </a> | Qualidade Técnica do Site | Crítico | |
| ✗ Tag GA4 dispara em todas as páginas exatamente uma vez (sem double-tagging)double-tagging GA4: home com 2 IDs de medição / 2 page_view por carga | Qualidade de Dados & Tagging | Crítico | |
| ✗ AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFCDN/WAF serve challenge JS a todos os agentes testados (browser-UA inclusive, HTTP 403 + interstitial): AI crawlers não executam JS e ficam no interstitial no lugar do site — invisível a GPTBot/OAI-SearchBot/ChatGPT-User/ClaudeBot/Claude-SearchBot/Claude-User/PerplexityBot/Perplexity-User/CCBot/meta-externalagent salvo allowlist por IP verificado (não detectável pelo probe) | 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 | |
| ✗ 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: 9 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 9 elemento(s) — ex.: <h3 class="banner-description"></h3> | Qualidade Técnica do Site | Atenção | |
| ✗ Todo conteúdo está dentro de landmarks (region)region: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <div class="lgpd-banner-content"> | Qualidade Técnica do Site | Atenção | |
| ✗ Alvos de toque têm tamanho adequado (target-size)target-size: 13 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 13 elemento(s) — ex.: <a href="/p/a-desmobilia"> <h4>A Desmobilia</h4> </a> | 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 |
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
55- ✗AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFCDN/WAF serve challenge JS a todos os agentes testados (browser-UA inclusive, HTTP 403 + interstitial): AI crawlers não executam JS e ficam no interstitial no lugar do site — invisível a GPTBot/OAI-SearchBot/ChatGPT-User/ClaudeBot/Claude-SearchBot/Claude-User/PerplexityBot/Perplexity-User/CCBot/meta-externalagent salvo allowlist por IP verificado (não detectável pelo probe)
- ✗Não existem loops de redirect2 cadeias seguidas; finais 0/200; loops: 1
- ✗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)
- ✗Canonical de host (www vs non-www) declarado consistentementehosts sinalizados (redirects/canonical/sitemap): desmobilia.com.br, www.desmobilia.com.br (esperado só www.desmobilia.com.br)
- ✗Toda página tem exatamente um H1mais de um H1: https://www.desmobilia.com.br/ (9); 0/1 URLs com exatamente 1
- ✗Não há múltiplos <title>/<description>/<head> no documentotitle/desc/head duplicados: https://www.desmobilia.com.br/
- ✗Decisão de permitir/bloquear cada AI crawler é coerente com a estratégiasem diretivas por-bot no robots.txt não há decisão explícita para auditar — incoerência por omissão (estratégia GEO indefinida)
- ✗security.txt presente e válido/.well-known/security.txt → 404 text/html; Contact:false Expires:false
Consideração
49- ✗Botões têm nome acessível (button-name)button-name: 2 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 2 elemento(s) — ex.: <button type="submit" class="button-submit"> <svg class="icon"> <use xlink:href="#icon-search"></use> </svg> </button>
- ✗Links têm nome discernível (link-name)link-name: 11 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 11 elemento(s) — ex.: <a href="/conta" data-popup-login=""> <svg class="icon"> <use xlink:href="#icon-account"></use> </svg> </a>
- ✗Campos de formulário têm label associado (label)label: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <input autocomplete="off" name="vnda" tabindex="-1" type="text" style="">
- ✗Contraste de cor atende WCAG AA (color-contrast)color-contrast: 25 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 25 elemento(s) — ex.: <input name="q" id="input-search" placeholder="Pesquisar" required="" type="search" style="">
- ✗Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <a class="olist-link" aria-label="Ir para o site da Olist" href="//www.vnda.com.br" rel="noopener" target="_blank"> <span class="text">Technology:</span> <svg class="olist icon"> <use href="#logo-olist"></use> </svg> </a>
- ✗Headings em ordem hierárquica (heading-order)heading-order: 9 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 9 elemento(s) — ex.: <h3 class="banner-description"></h3>
- ✗Todo conteúdo está dentro de landmarks (region)region: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <div class="lgpd-banner-content">
- ✗Alvos de toque têm tamanho adequado (target-size)target-size: 13 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 13 elemento(s) — ex.: <a href="/p/a-desmobilia"> <h4>A Desmobilia</h4> </a>
Compra
38- ✗HTTPS em todas as rotas (sem conteúdo servido em HTTP)todas as entradas http resolvem para https 200 (2 cadeias)
- ✗Formulários enviam via POST sobre HTTPSforms sensíveis POST+https: 0/2
- ✗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: colt.trustvox.com.br, certificate.trustvox.com.br, d335luupugsy2.cloudfront.net · com SRI: 0
- ✗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 (//): 3 em 1 URLs
- ✓HSTS com max-age >= 1 ano, includeSubDomains e preload
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: 2 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 2 elemento(s) — ex.: <button type="submit" class="button-submit"> <svg class="icon"> <use xlink:href="#icon-search"></use> </svg> </button>
- Crítico✗ Links têm nome discernível (link-name)link-name: 11 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 11 elemento(s) — ex.: <a href="/conta" data-popup-login=""> <svg class="icon"> <use xlink:href="#icon-account"></use> </svg> </a>
- Crítico✗ Campos de formulário têm label associado (label)label: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <input autocomplete="off" name="vnda" tabindex="-1" type="text" style="">
- Crítico✗ Contraste de cor atende WCAG AA (color-contrast)color-contrast: 25 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 25 elemento(s) — ex.: <input name="q" id="input-search" placeholder="Pesquisar" required="" type="search" style="">
- Crítico✗ Nome acessível inclui o texto visível (label-content-name-mismatch)label-content-name-mismatch: 1 elemento(s) em 1 página(s) — https://www.desmobilia.com.br/: 1 elemento(s) — ex.: <a class="olist-link" aria-label="Ir para o site da Olist" href="//www.vnda.com.br" rel="noopener" target="_blank"> <span class="text">Technology:</span> <svg class="olist icon"> <use href="#logo-olist"></use> </svg> </a>
- Crítico✗ Tag GA4 dispara em todas as páginas exatamente uma vez (sem double-tagging)double-tagging GA4: home com 2 IDs de medição / 2 page_view por carga
- Crítico✗ AI bots permitidos no robots.txt não são bloqueados na camada CDN/WAFCDN/WAF serve challenge JS a todos os agentes testados (browser-UA inclusive, HTTP 403 + interstitial): AI crawlers não executam JS e ficam no interstitial no lugar do site — invisível a GPTBot/OAI-SearchBot/ChatGPT-User/ClaudeBot/Claude-SearchBot/Claude-User/PerplexityBot/Perplexity-User/CCBot/meta-externalagent salvo allowlist por IP verificado (não detectável pelo probe)
- Crítico✗ Não existem loops de redirect2 cadeias seguidas; finais 0/200; loops: 1
Identidade de marca
“Reinvente seu espaço”
#3C54D0#4BD963#EC672F#DDDBDD#444444Sofisticado, curatorial e caloroso, com um toque nostálgico e criativo
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