RECIBO PÚBLICO Nº observatoriodetaxas-tec-br-2026-07-25-bb0a6e01

Recibo de auditoria técnica

Este documento lista cada verificação executada, o resultado bruto e a regra de pontuação aplicada. É permanente, imutável e verificável por qualquer pessoa.

URL AUDITADA
https://observatoriodetaxas.tec.br/
AUDITORIA
5c3ff46f-5942-4e9a-8898-d2ceeeccfa37
INICIADA EM
25/07/2026, 03:49:11
CONCLUÍDA EM
25/07/2026, 03:49:51
METODOLOGIA
v1.0.0 regras públicas
RECIBO EMITIDO EM
25/07/2026, 03:49:51

NOTA GERAL

83,6

DE 100

BOM

IA / GEO (peso 25%)78
SEO técnico (peso 20%)95
Acessibilidade (peso 20%)100
Performance (peso 20%)88,2
Boas práticas de transporte (peso 15%)50

Plano de ação

gerado por IA a partir das verificações deste recibo
1. Configure os cabeçalhos de segurança HSTS e CSP no servidor: adicione `Strict-Transport-Security: max-age=31536000; includeSubDomains` para impedir acessos em HTTP inseguro e `Content-Security-Policy-Report-Only: default-src 'self'` para monitorar origens de conteúdo sem bloquear recursos existentes (30 pontos perdidos). 2. Aplique os cabeçalhos de resposta complementares: adicione `X-Content-Type-Options: nosniff` (impede o navegador de alterar o tipo de arquivo informado), `Referrer-Policy: strict-origin-when-cross-origin`, `X-Frame-Options: SAMEORIGIN` e `Permissions-Policy: camera=(), microphone=(), geolocation=()` (20 pontos perdidos). 3. Declare os dados de entidade na página: insira o CNPJ visível no texto (como no rodapé) e a localização (endereço estruturado em formato JSON-LD, além de CEP ou cidade/UF no texto) (12 pontos perdidos). 4. Defina a política para robôs de inteligência artificial no arquivo `robots.txt`: adicione blocos com instrução explícita (`Allow` ou `Disallow`) para agentes como GPTBot, ClaudeBot, Google-Extended e PerplexityBot (10 pontos perdidos). 5. Corrija o tempo de carregamento do elemento principal no celular (LCP): converta a imagem do topo para WebP ou AVIF, adicione o atributo `fetchpriority="high"` e ajuste o arquivo para a dimensão exata de exibição, reduzindo o tempo atual de 2,6s para a meta de até 2,5s (7 pontos perdidos). 6. Ajuste o tamanho da meta description: reduza o texto de 202 para a faixa recomendada de 50 a 160 caracteres, cortando 42 caracteres (5 pontos perdidos).

O plano resume as correções listadas abaixo, verificação a verificação — a prova continua sendo o extrato.

IA / GEO

78 / 100
  • ia.clareza_entidade

    Clareza de entidade: nome, CNPJ e localização extraíveis

    Regra: Nome identificável: 8 pts + CNPJ presente: 6 pts + localização presente: 6 pts (máx. 20).

    como corrigir — Faltou: CNPJ no texto da página (rodapé é o lugar clássico); localização (endereço no JSON-LD, CEP ou cidade/UF no texto).

    PARCIAL8 / 20
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "cep_extraido": null,
      "cnpj_extraido": null,
      "nome_extraido": "Observatório de Taxas",
      "endereco_json_ld": false,
      "cidade_uf_extraida": null
    }
  • ia.conteudo_sem_js

    Conteúdo presente no HTML sem JavaScript

    Regra: ≥ 200 palavras: 20 pts · 50–199 palavras: 10 pts · < 50 palavras: 0 pts.

    CONFORME20 / 20
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "amostra": "Pular para o conteúdo A primeira página que se reescreve sozinha Observatório de Taxas Sexta-feira, 24 de julho de 2026 coletado às 22:46 · commit 0eb235a · fonte SGS/BACEN Taxa Selic hoje Meta Selic 14,25% a.a. ■ 0,00 p.p. no mês ref. 13/07/2026 IPCA acumulado 12 meses hoje IPCA 12 meses 4,64% ▼ -0,08 p.p. no mês ref. 01/06/2026 Cotação do dólar hoje Dólar (venda) R$ 5,0666 ▼ -R$ 0,1100 no mês re",
      "palavras_sem_js": 482
    }
  • ia.entidade_organizacao

    Entidade Organization identificável no JSON-LD

    Regra: Entidade de organização com `name`: 15 pts · tipo presente sem `name`: 8 pts · ausente: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "nome": "Observatório de Taxas",
      "tipos": [
        "Organization"
      ],
      "organizacoes_encontradas": 1
    }
  • ia.jsonld_parseavel

    Dados estruturados JSON-LD parseáveis

    Regra: Todos os blocos presentes parseiam: 15 pts · parte parseia: 8 pts · nenhum bloco ou nenhum parseia: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "blocos_validos": 1,
      "blocos_com_erro": 0,
      "tipos_declarados": [
        "Organization",
        "WebSite",
        "Dataset",
        "Dataset",
        "Dataset",
        "Dataset"
      ],
      "blocos_encontrados": 1
    }
  • ia.llms_txt

    llms.txt presente

    Regra: llms.txt acessível e em texto puro (não é fallback HTML): 15 pts · ausente ou devolvendo HTML: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "status": 200,
      "content_type": "text/plain; charset=utf-8",
      "primeiras_linhas": "# Observatório de Taxas\n\n> Indicadores econômicos oficiais do Brasil — Selic, IPCA, dólar, IGP-M, desemprego e outros — coletados da API pública do Sistema Gerenciador de Séries Temporais (SGS) do Banco Central a cada 6 horas. O histórico completo vive versionado em Git desde 2015: cada coleta é um commit, então todo número é auditável ponto a ponto no repositório.\n\nSite 100% estático (GitHub Pages), gratuito e sem cadastro. Os dados são arquivos JSON sob `/data/`, no formato `[{\"data\": \"dd/mm/aaaa\", \"valor\": \"14.25\"}, ...]` — `valor` é string com ponto decimal, ordenado por data. Os números do dia são \"assados\" direto no HTML da primeira página (entre os marcadores `<!-- boletim:inicio -->` e `<!-- boletim:fim -->`, reescritos a cada coleta), então funcionam sem JavaScript. Dados em domínio público (CC0 1.0). Código e histórico: https://github.com/iosbilario/observatorio-taxas — mantido por LBP Tecnologia.",
      "parece_fallback_html": false
    }
  • ia.robots_bots_ia

    robots.txt com política explícita para bots de IA

    Regra: Política explícita para ≥ 1 bot de IA: 15 pts · robots.txt existe mas não menciona bots de IA: 5 pts · sem robots.txt: 0 pts.

    como corrigir — Seu robots.txt existe mas não menciona bots de IA. Adicione blocos explícitos (User-agent: GPTBot, ClaudeBot, Google-Extended, PerplexityBot…) com Allow ou Disallow — a decisão é sua; o ponto é ela ser explícita.

    PARCIAL5 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "status": 200,
      "bots_ia_mencionados": [],
      "robots_txt_acessivel": true
    }

SEO técnico

95 / 100
  • seo.canonical

    URL canônica declarada e coerente

    Regra: Canonical absoluta no mesmo domínio: 15 pts · presente mas relativa ou de outro domínio: 8 pts · ausente: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "absoluta": true,
      "canonical": "https://observatoriodetaxas.tec.br/",
      "mesmo_dominio": true
    }
  • seo.description

    Meta description dentro dos limites

    Regra: Presente com 50–160 caracteres: 10 pts · presente fora do intervalo: 5 pts · ausente: 0 pts.

    como corrigir — Sua description tem 202 caracteres — ajuste para 50–160 (corte 42).

    PARCIAL5 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "caracteres": 202,
      "description": "Taxa Selic hoje, IPCA acumulado em 12 meses, cotação do dólar, IGP-M e desemprego, direto do Banco Central (SGS/BACEN). Números do dia, série histórica desde 2015 e dados oficiais versionados em aberto."
    }
  • seo.indexavel

    Página indexável

    Regra: Status 200 sem noindex: 20 pts · qualquer bloqueio ou status ≠ 200: 0 pts.

    CONFORME20 / 20
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "status": 200,
      "meta_robots": "index, follow, max-image-preview:large",
      "x_robots_tag": null,
      "noindex_detectado": false
    }
  • seo.lighthouse_seo

    Score SEO do Lighthouse (mobile)

    Regra: Score (0–1) × 20 pts. Sem resultado do PSI: 0 pts, com o erro registrado.

    CONFORME20 / 20
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "score_lighthouse": 1,
      "versao_lighthouse": "13.4.0"
    }
  • seo.open_graph

    Open Graph essencial

    Regra: 2,5 pts por tag presente (og:title, og:description, og:image, og:url), máx. 10 pts.

    CONFORME10 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "ausentes": [],
      "presentes": [
        "og:title",
        "og:description",
        "og:image",
        "og:url"
      ]
    }
  • seo.sitemap

    Sitemap acessível, válido e declarado

    Regra: Acessível e válido: 10 pts + declarado no robots.txt: 5 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "status": 200,
      "xml_valido": true,
      "url_verificada": "https://observatoriodetaxas.tec.br/sitemap.xml",
      "urls_no_sitemap": 518,
      "declarado_no_robots": true
    }
  • seo.titulo

    Título da página dentro dos limites

    Regra: Presente com 10–60 caracteres: 10 pts · presente fora do intervalo: 5 pts · ausente: 0 pts.

    CONFORME10 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "titulo": "Selic, IPCA e Dólar hoje | Observatório de Taxas",
      "caracteres": 48
    }

Acessibilidade

100 / 100
  • a11y.alt

    Texto alternativo em imagens

    Regra: (imagens com alt ÷ total de imagens) × 15 pts. Página sem imagens: 15 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "com_alt": 1,
      "total_imagens": 1
    }
  • a11y.contraste

    Contraste de cores (axe via Lighthouse)

    Regra: Auditoria passou (ou não se aplica): 10 pts · falhou: 0 pts · PSI indisponível: 0 pts.

    CONFORME10 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "modo": "binary",
      "score_auditoria": 1
    }
  • a11y.headings

    Hierarquia de headings

    Regra: Exatamente um h1: 8 pts + nenhum salto de nível: 7 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "sequencia": [
        "h1",
        "h2",
        "h2",
        "h2",
        "h2",
        "h2",
        "h2",
        "h2",
        "h2",
        "h2",
        "h2"
      ],
      "h1_encontrados": 1,
      "saltos_de_nivel": 0
    }
  • a11y.lang

    Idioma declarado no <html>

    Regra: lang presente e válido: 10 pts · presente mas malformado: 5 pts · ausente: 0 pts.

    CONFORME10 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "lang": "pt-BR",
      "formato_valido": true
    }
  • a11y.lighthouse

    Score de acessibilidade do Lighthouse (mobile)

    Regra: Score (0–1) × 40 pts. Sem resultado do PSI: 0 pts, com o erro registrado.

    CONFORME40 / 40
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "score_lighthouse": 1,
      "versao_lighthouse": "13.4.0"
    }
  • a11y.skip_link

    Skip link para o conteúdo

    Regra: Skip link identificado entre os primeiros links da página: 10 pts · ausente: 0 pts.

    CONFORME10 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "skip_link": {
        "href": "#conteudo",
        "texto": "Pular para o conteúdo"
      },
      "links_ancora_iniciais": [
        {
          "href": "#conteudo",
          "texto": "Pular para o conteúdo"
        }
      ]
    }

Performance

88,2 / 100
  • perf.cls_mobile

    CLS — Cumulative Layout Shift (mobile, laboratório)

    Regra: ≤ 0,1: 10 pts · ≤ 0,25: 5 pts · acima: 0 pts.

    CONFORME10 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "cls": 0.001735255981995642
    }
  • perf.lcp_mobile

    LCP — Largest Contentful Paint (mobile, laboratório)

    Regra: ≤ 2,5 s: 15 pts · ≤ 4,0 s: 8 pts · acima: 0 pts.

    como corrigir — LCP em 2,6s (meta: ≤2,5s). Causa mais comum: imagem pesada no topo — converta para WebP/AVIF, adicione fetchpriority="high" e sirva no tamanho exibido.

    PARCIAL8 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "lcp_ms": 2551
    }
  • perf.psi_desktop

    Score de performance do Lighthouse — desktop

    Regra: Score (0–1) × 25 pts. Sem resultado do PSI: 0 pts, com o erro registrado.

    como corrigir — Performance desktop em 85/100 — veja as oportunidades no PageSpeed Insights (aba Desktop).

    PARCIAL21,25 / 25
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "analisado_em": "2026-07-25T06:49:25.018Z",
      "score_lighthouse": 0.85,
      "versao_lighthouse": "13.4.0"
    }
  • perf.psi_mobile

    Score de performance do Lighthouse — mobile

    Regra: Score (0–1) × 35 pts. Sem resultado do PSI: 0 pts, com o erro registrado.

    como corrigir — Performance mobile em 97/100 — as métricas abaixo (LCP, CLS, TBT) indicam exatamente onde atacar.

    PARCIAL33,95 / 35
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "analisado_em": "2026-07-25T06:49:14.360Z",
      "score_lighthouse": 0.97,
      "versao_lighthouse": "13.4.0"
    }
  • perf.tbt_mobile

    TBT — Total Blocking Time (mobile, laboratório)

    Regra: ≤ 200 ms: 15 pts · ≤ 600 ms: 8 pts · acima: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "tbt_ms": 0
    }

Boas práticas de transporte

50 / 100
  • tr.certificado

    Certificado TLS válido

    Regra: Certificado válido e não expirado: 15 pts · inválido, expirado ou inacessível: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "valido": true,
      "emissor": "Let's Encrypt / YR1",
      "sujeito": "observatoriodetaxas.tec.br",
      "valido_ate": "2026-10-11T15:09:08.000Z",
      "dias_restantes": 78
    }
  • tr.csp

    Content-Security-Policy

    Regra: CSP ativa: 15 pts · CSP em report-only: 10 pts · ausente: 0 pts.

    como corrigir — Comece com uma CSP em modo report-only (Content-Security-Policy-Report-Only: default-src 'self') — já vale pontos e não quebra nada; endureça depois.

    NÃO CONFORME0 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "csp": null,
      "csp_report_only": null
    }
  • tr.headers_extras

    Headers complementares

    Regra: Referrer-Policy: 4 pts + anti-framing: 3 pts + Permissions-Policy: 3 pts.

    como corrigir — Adicione: Referrer-Policy: strict-origin-when-cross-origin · X-Frame-Options: SAMEORIGIN · Permissions-Policy: camera=(), microphone=(), geolocation=().

    NÃO CONFORME0 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "referrer_policy": null,
      "x_frame_options": null,
      "permissions_policy": null,
      "frame_ancestors_na_csp": false
    }
  • tr.hsts

    HSTS — Strict-Transport-Security

    Regra: Header presente: 10 pts + max-age ≥ 180 dias: 5 pts.

    como corrigir — Adicione o header Strict-Transport-Security: max-age=31536000; includeSubDomains — instrui o navegador a nunca voltar para http.

    NÃO CONFORME0 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "header": null,
      "max_age_segundos": null
    }
  • tr.https_forcado

    HTTPS forçado

    Regra: Redireciona para https: 20 pts · porta 80 fechada (só https atende): 15 pts · serve conteúdo por http sem redirecionar: 0 pts.

    CONFORME20 / 20
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "cadeia": [
        {
          "de": "http://observatoriodetaxas.tec.br/",
          "para": "https://observatoriodetaxas.tec.br/",
          "status": 301
        }
      ],
      "redireciona": true,
      "porta_80_fechada": false
    }
  • tr.mixed_content

    Ausência de mixed content

    Regra: Zero referências http:// a recursos: 15 pts · qualquer referência: 0 pts.

    CONFORME15 / 15
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "quantidade": 0,
      "referencias_http": []
    }
  • tr.nosniff

    X-Content-Type-Options: nosniff

    Regra: Header presente com valor nosniff: 10 pts · ausente: 0 pts.

    como corrigir — Adicione o header X-Content-Type-Options: nosniff.

    NÃO CONFORME0 / 10
    resultado bruto · executada em 25/07/2026, 03:49:51
    {
      "header": null
    }

Histórico deste site

AUDITORIANOTAMETODOLOGIARECIBO
25/07/2026, 03:49:1183,6v1.0.0este recibo
24/07/2026, 03:44:1984,4v1.0.0/r/observatoriodetaxas-tec-br-2026-07-24-41b04ffe
23/07/2026, 03:46:4785,9v1.0.0/r/observatoriodetaxas-tec-br-2026-07-23-8114190d
22/07/2026, 03:25:2486v1.0.0/r/observatoriodetaxas-tec-br-2026-07-22-a64ac3a9
21/07/2026, 03:25:1683,4v1.0.0/r/observatoriodetaxas-tec-br-2026-07-21-c773c6dd
20/07/2026, 03:25:1286v1.0.0/r/observatoriodetaxas-tec-br-2026-07-20-3da65270
19/07/2026, 03:25:2384,4v1.0.0/r/observatoriodetaxas-tec-br-2026-07-19-b13279a8
18/07/2026, 03:25:0784,4v1.0.0/r/observatoriodetaxas-tec-br-2026-07-18-6382612b
16/07/2026, 20:39:3384,4v1.0.0/r/observatoriodetaxas-tec-br-2026-07-16-dda6e2dd
16/07/2026, 15:39:0085,9v1.0.0/r/observatoriodetaxas-tec-br-2026-07-16-61e2935c