From the file to the number you see
Follow the path of a number, from the source to the screen, and look up the rule of each indicator: what it measures, how it is calculated, where it comes from and what it does not allow one to conclude.
Indicators with a published rule
288indicators
With a published formula
253indicators
With observed source data
220indicators
All levels visible.
What do you want to do?
Find an indicator
By name, by unit or by the question the number answers.
See the formula of a number
253 of the 288 indicators have a published formula. For the others, the definition and the aggregation rule say how the number is obtained.
Reproduce a value
Download the file the number came from and redo the calculation. The example uses a number from the data catalog.
From the source file to the number on screen
Step 1: The source publishes
ONS, ANEEL, CCEE, IBGE and other bodies publish the file, with their own period, update schedule and license.
Step 2: The file is stored
Each collection stores a copy of the file, without changing anything, with its fingerprint: a code that changes if any part of the file changes.
Step 3: The history grows
Each value records which collection it came from. If the source revises a value, the new version comes in and the previous one stays stored.
Step 4: The base is published
Published rules turn the history into the bases that the pages read. Each published file has its fingerprint in a list.
Step 5: The indicator appears
The indicator rule defines the number, the unit, the scope and what it does not allow one to conclude.
Each value records which collection it came from. When the source revises a value (ONS states that its data undergo recurring consistency checks), the observatory stores the new version without erasing the previous one. The "as it was on" query returns the value known at any instant (with an explicit time zone, with no date ambiguity) and is the one that the input variables of models in production and the retrospective tests by version must use. The retrospective test of the current research was run on a single frozen copy of the data, simulating real time; the limitation is declared on each model card. In engineering vocabulary: backtest on a single snapshot, in pseudo real time, with the vintage of each observation.
Dates kept apart: reference period; publication by the source (when reported); capture by Scrutiniums; forecast cutoff; issuance.
The complete technical documentation, with the architecture, the source catalog, auditability and forecast governance, is in the public repository of the project ↗, along with the code that produces each number.
The usual names in data engineering are bronze (the original file of each capture), silver (the history of observations by capture, the vintage) and gold (the processed data the pages publish).
SOURCE (CCEE, ONS, ANEEL) ↓ capture: original file, sha256, url,capturado_em,publicado_em(source metadata) BRONZE: immutable copy per capture ↓ deterministic normalization SILVER (history): observations by vintage; only appends, never deletes ↓ published rules GOLD (processed data): indicators with provenance, published in/energia/gold↓ INDICATOR → VISUALIZATION | MODEL Forecasts: SOURCE VINTAGE → INPUT VARIABLES → MODEL VERSION → PUBLICATION → ACTUAL → SCORING
Which interpretations are allowed?
288 indicators in 19 modules · rule, unit, scopes, coverage and limitations of each oneNature of the data: Calculated
Module
Has a published formula
More filters
288 indicators. Showing 1 to 10.
Water and climate · source data estimated · result calculated
Portuguese onlyAssociação entre chuva e ENA por bacia
Portuguese onlyMeses de chuva acima do normal coincidem com ENA acima da MLT?
Unit: Portuguese onlycoeficiente (−1 a 1) · bacia; mês (2001 a 2025) · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyBalanço hídrico de 30 dias por reservatório
Portuguese onlyAs entradas e saídas de água explicam a variação do volume do reservatório?
Unit: Portuguese onlyhm³ · reservatório; janela de 30 dias (e dia no CSV) · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyVariação da EAR por reservatório
Portuguese onlyQuais reservatórios explicam a variação do armazenamento do subsistema?
Unit: Portuguese onlyMWmês · subsistema e reservatório; janela de 30 dias · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyFaixa sazonal da EAR
Portuguese onlyO armazenamento está dentro do usual para a data?
Unit: Portuguese only% da EAR máxima e MWmês · subsistema, SIN, REE, bacia; dia do calendário · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyMudanças da capacidade de armazenamento
Portuguese onlyQuando e por que a EAR máxima de cada subsistema mudou?
Unit: Portuguese onlyMWmês · subsistema e reservatório; evento (dia) · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyEnergia armazenada em MWmês
Portuguese onlyQuanta energia está guardada nos reservatórios, em valor absoluto?
Unit: Portuguese onlyMWmês · subsistema, REE, bacia, reservatório; dia (série mensal pelo último dia do mês) · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyEAR do SIN em % da capacidade
Portuguese onlyQuanto da capacidade de armazenamento do SIN está ocupado?
Unit: Portuguese only% da EAR máxima · SIN; dia · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyENA de 30 dias em % da MLT
Portuguese onlyA água que chegou nos últimos 30 dias está acima do normal?
Unit: Portuguese only% da MLT · subsistema, SIN, REE, bacia; janela móvel de 30 dias · published formula · appears on 1 page
Water and climate · source data observed · result calculated
Portuguese onlyVersão da MLT do conjunto aberto
Portuguese onlyQual MLT o ONS usa no percentual diário da ENA e ela é a mesma do PMO?
Unit: Portuguese only% de diferença e MWmed · subsistema e usina; mês e evento · published formula · appears on 1 page
Water and climate · source data estimated · result calculated
Portuguese onlyAnomalia de precipitação
Portuguese onlyChoveu mais ou menos que o usual para o mês e para os últimos 30 dias?
Unit: Portuguese only% · bacia; mês e 30 dias · published formula · appears on 1 page
Source: Scrutiniums, catalog of module indicators (the same one the observatory uses to calculate). “no data” means missing in the source, never zero; in downloaded files a missing value is an empty cell. Current order: Module (default order).
Only those that each indicator's rule supports. The 288 indicators have a written definition, unit, breakdown and limits; 253 have a published formula.
The numbers behind the answer
Each of the 288 indicators published across 19 modules has a written definition, unit, geographic and time breakdown, aggregation rule, coverage rule, missing-data policy, validations and limitations; 253 have a published formula and 220 use observed source data. The list below is the same one the pipeline uses to compute: a rule that is not in it is not applied.How do I redo a number, step by step?
The example redoes, with the file you download, the number of datasets published in the catalog. The path is the same for any number that has the Check this number record.
- 1. Download the file. The complete catalog, with one row per dataset.Download the catalog (CSV)
- 2. Count. Each row states how far the dataset has come, from cataloged to published. Count the rows whose state is PUBLICADO (published).
- 3. Compare. Result: 126 of 415 rows. It is the same number as Published in the observatory, in the first strip of the Data page.Open the Data page
- 4. Check the origin. The record shows the formula, the source, the version and the fingerprint of the source files.
File: dados_catalogo.csv, column estado (semicolon as separator, text fields in quotes). Query that generates the number: Portuguese onlyentradas de catalogo.json com estado = PUBLICADO. To redo the whole publication: Portuguese onlypython3 pipeline/energia/executar_modulo.py dados --sem-coleta.
Fingerprint (sha256) of the file in the file list: 7d57de94e44008acb8f7d2952239fbc36e86fb39713869a7301f1ce3c353027c. Check that of the downloaded file on the Download and reproduction page.
How does the observatory check its own statements and files?
Statements about integrated sources checked
8statements
Automatic checks failed
3checks
The 3 failed checks are in CSV files: rows with a number of columns different from the header. The 3 files were rewritten after the validation: the fingerprint the report judged differs from the one in the list of published files, so the report says nothing about the version you download. Reread when this page was built, each published file has the header's number of columns in every row. Nothing was approved again by hand: the publication report stays as it was generated.
empresas_financas_ajustes.csv: esquema: 3 rows with a number of columns different from the header. Fingerprint judged: 25518c16ec119b7afc8e697be910a5ca5541f000131e8d8d50a3d1ca82deea17. Fingerprint in the file list: 7b03785d34417e989a383f0cf4dc8c349b835df50a2f771af882317fe0a75c8a. Reread: 111 rows, 12 columns in the header, 0 rows with a different number of columns. mercado_nacional_mensal.csv: esquema: 18 rows with a number of columns different from the header. Fingerprint judged: eb6fcba7b021f6d4d145b4b1d76d81d2331282195784067af7be923986b2c2a0. Fingerprint in the file list: 78dc79def97822f8aa45cdc5c26eea1eac5c58826479c1f2599d40a56ead1c11. Reread: 272 rows, 17 columns in the header, 0 rows with a different number of columns. sintese_regras_diario.csv: esquema: 3099 rows with a number of columns different from the header. Fingerprint judged: 7b975056e280af8cce712c6b599169edd36fdd2bb77837246bbfd80e0cf4ddd1. Fingerprint in the file list: 498a38d0dba8108b91650604660e32e5f4359efb7076545d82096364b49c221d. Reread: 20,981 rows, 8 columns in the header, 0 rows with a different number of columns.
The state of each published file is in Download and reproduction.
Complete table of the rules, with all the columns
The same search and the same filters as the list, with the nature, unit and scope columns to sort and compare. The selection chosen in the list appears here, and the table downloads the selection as CSV or XLSX.
Module
Nature of the source data
Nature of the result
Has a published formula
288 of 288 rows
| Portuguese onlyAssociação entre chuva e ENA por bacia | Portuguese onlyMeses de chuva acima do normal coincidem com ENA acima da MLT? | Water and climate | Estimated | Calculated | Portuguese onlycoeficiente (−1 a 1) | Portuguese onlybacia | Portuguese onlymês (2001 a 2025) | yes | 1 |
|---|---|---|---|---|---|---|---|---|---|
| Portuguese onlyBalanço hídrico de 30 dias por reservatório | Portuguese onlyAs entradas e saídas de água explicam a variação do volume do reservatório? | Water and climate | Observed | Calculated | Portuguese onlyhm³ | Portuguese onlyreservatório | Portuguese onlyjanela de 30 dias (e dia no CSV) | yes | 1 |
| Portuguese onlyVariação da EAR por reservatório | Portuguese onlyQuais reservatórios explicam a variação do armazenamento do subsistema? | Water and climate | Observed | Calculated | Portuguese onlyMWmês | Portuguese onlysubsistema e reservatório | Portuguese onlyjanela de 30 dias | yes | 1 |
| Portuguese onlyFaixa sazonal da EAR | Portuguese onlyO armazenamento está dentro do usual para a data? | Water and climate | Observed | Calculated | Portuguese only% da EAR máxima e MWmês | Portuguese onlysubsistema, SIN, REE, bacia | Portuguese onlydia do calendário | yes | 1 |
| Portuguese onlyMudanças da capacidade de armazenamento | Portuguese onlyQuando e por que a EAR máxima de cada subsistema mudou? | Water and climate | Observed | Calculated | Portuguese onlyMWmês | Portuguese onlysubsistema e reservatório | Portuguese onlyevento (dia) | yes | 1 |
| Portuguese onlyEnergia armazenada em MWmês | Portuguese onlyQuanta energia está guardada nos reservatórios, em valor absoluto? | Water and climate | Observed | Calculated | Portuguese onlyMWmês | Portuguese onlysubsistema, REE, bacia, reservatório | Portuguese onlydia (série mensal pelo último dia do mês) | yes | 1 |
| Portuguese onlyEAR do SIN em % da capacidade | Portuguese onlyQuanto da capacidade de armazenamento do SIN está ocupado? | Water and climate | Observed | Calculated | Portuguese only% da EAR máxima | Portuguese onlySIN | Portuguese onlydia | yes | 1 |
| Portuguese onlyENA de 30 dias em % da MLT | Portuguese onlyA água que chegou nos últimos 30 dias está acima do normal? | Water and climate | Observed | Calculated | Portuguese only% da MLT | Portuguese onlysubsistema, SIN, REE, bacia | Portuguese onlyjanela móvel de 30 dias | yes | 1 |
| Portuguese onlyVersão da MLT do conjunto aberto | Portuguese onlyQual MLT o ONS usa no percentual diário da ENA e ela é a mesma do PMO? | Water and climate | Observed | Calculated | Portuguese only% de diferença e MWmed | Portuguese onlysubsistema e usina | Portuguese onlymês e evento | yes | 1 |
| Portuguese onlyAnomalia de precipitação | Portuguese onlyChoveu mais ou menos que o usual para o mês e para os últimos 30 dias? | Water and climate | Estimated | Calculated | Portuguese only% | Portuguese onlybacia | Portuguese onlymês e 30 dias | yes | 1 |
| Portuguese onlyPrecipitação média na bacia | Portuguese onlyQuanto choveu na área de cada bacia hidroenergética? | Water and climate | Estimated | Calculated | Portuguese onlymm/dia (mm no mês e em 30 dias) | Portuguese onlybacia hidroenergética do ONS | Portuguese onlydia UTC, mês e 30 dias | yes | 1 |
| Portuguese onlyPrevisão de chuva por bacia | Portuguese onlyQuanto o modelo de previsão espera de chuva em cada bacia nos próximos dias? | Water and climate | Forecast | Forecast | Portuguese onlymm/dia (mm em 7 dias e no horizonte) | Portuguese onlybacia hidroenergética do ONS | Portuguese onlydia UTC, rodada | yes | 1 |
| Portuguese onlyPrevisão de temperatura por subsistema | Portuguese onlyQue temperatura o modelo de previsão espera nas áreas onde está a população de cada subsistema? | Water and climate | Forecast | Forecast | Portuguese only°C | Portuguese onlysubsistema e SIN | Portuguese onlydia UTC, rodada | yes | 1 |
| Portuguese onlyAnomalia de temperatura | Portuguese onlyOs últimos 30 dias foram mais quentes ou mais frios que o usual? | Water and climate | Estimated | Calculated | Portuguese only°C | Portuguese onlysubsistema e SIN | Portuguese only30 dias e mês | yes | 1 |
| Portuguese onlyTemperatura do ar por subsistema | Portuguese onlyQual foi a temperatura nas áreas onde está a população de cada subsistema? | Water and climate | Estimated | Calculated | Portuguese only°C | Portuguese onlyUF, subsistema, SIN | Portuguese onlydia (hora solar local) | yes | 1 |
| Portuguese onlyContribuição de calendário, temperatura, sazonalidade e tendência (decomposição estatística) | Portuguese onlyQuanto da variação da carga é compatível com clima e calendário, segundo um modelo estatístico? | Load | Observed | Estimated | Portuguese onlylog × 100 (aproximadamente pontos percentuais) | Portuguese onlysubsistema e SIN | Portuguese onlydiário e janelas | yes | 1 |
| Portuguese onlyErro fora da amostra da decomposição estatística | Portuguese onlyQuão bem o modelo de clima e calendário reproduz a carga em dias que não viu? | Load | Observed | Estimated | Portuguese only% e MWmed | Portuguese onlysubsistema e SIN | Portuguese onlydiário, agregado no período de avaliação | yes | 1 |
| Portuguese onlyCarga média anual e variação entre anos completos | Portuguese onlyQuanto o sistema consumiu em média em cada ano e quanto isso mudou? | Load | Observed | Calculated | Portuguese onlyMWmed e % | Portuguese onlysubsistema e SIN | Portuguese onlyanual | yes | 1 |
| Portuguese onlyParcela da carga global atendida por MMGD (estimativa do ONS) | Portuguese onlyQual parcela da carga é suprida pela micro e minigeração distribuída, segundo a estimativa do ONS? | Load | Estimated | Calculated | Portuguese only% da carga global | Portuguese onlysubmercado e SIN | Portuguese onlyhora, dia e mês | yes | 1 |
| Portuguese onlyPerfil horário típico por mês e tipo de dia | Portuguese onlyComo a carga se distribui ao longo do dia num mês típico? | Load | Observed | Calculated | Portuguese onlyMWmed | Portuguese onlysubsistema e SIN | Portuguese onlyhora do dia, por mês | yes | 1 |
| Portuguese onlyPico horário diário da carga e hora do pico | Portuguese onlyQuando ocorre o pico de carga e de que tamanho ele é? | Load | Observed | Calculated | Portuguese onlyMWmed (na hora) e hora 0 a 23 | Portuguese onlysubsistema e SIN | Portuguese onlydiário (a partir de valores horários) | yes | 1 |
| Portuguese onlyRevisão da carga diária entre capturas | Portuguese onlyQuanto a fonte mudou um valor já publicado? | Load | Observed | Calculated | Portuguese onlyMWmed e % | Portuguese onlysubsistema | Portuguese onlydiário, por captura | yes | 1 |
| Portuguese onlyVariação da carga contra os mesmos dias da semana do ano anterior | Portuguese onlyQuanto a carga mudou em relação ao mesmo período do ano passado, com a mesma composição de dias? | Load | Observed | Calculated | Portuguese only% | Portuguese onlysubsistema (SE/CO, S, NE, N) e SIN | Portuguese onlyjanela diária móvel | yes | 1 |
| Portuguese onlyTemperatura diária ponderada pela população, por subsistema | Portuguese onlyQual foi a temperatura média do dia nas regiões de cada subsistema? | Load | Estimated | Calculated | Portuguese only°C | Portuguese onlysubsistema e SIN | Portuguese onlydiário | yes | 1 |
| Portuguese onlyBandeira tarifária acionada e adicional por patamar | Portuguese onlyQual bandeira vigorou em cada mês e quanto ela acrescenta por kWh? | Electricity bill | Observed | Observed | Portuguese onlyR$/MWh | Portuguese onlySistema Interligado Nacional (consumidores cativos, exceto sistemas isolados) | Portuguese onlymensal | no | 1 |
Statements about integrated sources, checked against the catalog
Each sentence below is written by the pipeline from the actual state of the catalog: the dataset is only described as integrated, validated or published if the ladder got there. A statement whose dataset is outside the catalog, or only cataloged, fails.
Portuguese onlyLimites de intercâmbio entre subsistemas● checked against the catalog
Portuguese onlyLimites de intercâmbio entre subsistemas: não há conjunto público estruturado com os limites operativos e as suas vigências; os limites estão no Relatório Quadrimestral de Limites de Intercâmbio, no SINtegre do ONS (acesso autenticado), e não foram integrados. Nenhum percentual de uso do limite é calculado. Integrados, só para citação: Documentos públicos do ONS sobre limites sistêmicos (Submódulo 9.1, PEL 2019/2020, RT-ONS DPL 0131/2023) (ons:documentos-limites-intercambio, publicado). Achado A06 (bloqueado por fonte não pública (limites) e resolvido para a pergunta alternativa (evidências publicadas)): Não há recurso público estruturado com os limites operativos de intercâmbio e suas vigências. O painel responde quando há evidência publicada de limitação: horas em que fluxos sistêmicos ficaram acima do limite estabelecido (ATLS) e perturbações com corte de carga. Nenhum percentual de utilização é calculado.
Datasets cited:
ons:documentos-limites-intercambio(published).CorrectionPortuguese onlyA metodologia afirmava que os limites de intercâmbio estavam catalogados. A página de metodologia dizia que os limites de intercâmbio estavam catalogados; não há conjunto público correspondente. A frase deve dizer que os limites estão no Relatório Quadrimestral do SINtegre (acesso autenticado) e não foram integrados.
Portuguese onlyIntercâmbio verificado entre subsistemas● checked against the catalog
Portuguese onlyIntercâmbio verificado entre subsistemas: integrado, validado e publicado (ons:intercambio-nacional).
Datasets cited:
ons:intercambio-nacional(published).Portuguese onlyCVU por usina térmica● checked against the catalog
Portuguese onlyCVU por usina térmica: integrado, validado e publicado (ons:cvu-usitermica).
Datasets cited:
ons:cvu-usitermica(published).Portuguese onlyGeração por usina● checked against the catalog
Portuguese onlyGeração por usina: integrado, validado e publicado (ons:geracao-usina-2).
Datasets cited:
ons:geracao-usina-2(published).Portuguese onlyGeração térmica por motivo de despacho● checked against the catalog
Portuguese onlyGeração térmica por motivo de despacho: integrado, validado e publicado (ons:geracao-termica-despacho-2).
Datasets cited:
ons:geracao-termica-despacho-2(published).Portuguese onlyPLD horário● checked against the catalog
Portuguese onlyPLD horário: integrado, validado e publicado (ccee:pld_horario).
Datasets cited:
ccee:pld_horario(published).Portuguese onlyCMO semanal e semi-horário● checked against the catalog
Portuguese onlyCMO semanal e semi-horário: integrado, validado e publicado (ons:cmo-semanal, ons:cmo-semi-horario).
Datasets cited:
ons:cmo-semanal(published);ons:cmo-semi-horario(published).Portuguese onlyConjuntos da CCEE integrados (mercado de curto prazo e cadastro de agentes)● checked against the catalog
Portuguese onlyConjuntos da CCEE integrados (mercado de curto prazo e cadastro de agentes): 18 conjuntos integrados, validados e publicados.
Datasets cited:
ccee:agente_qtd_contabilizacao(published);ccee:consumo_classe_agente(published);ccee:consumo_mensal_ambiente_comercializacao(published);ccee:desligamento_compulsorio(published);ccee:desligamento_voluntario(published);ccee:encargo_ess_ancilar(published);ccee:encargo_pgto_mensal(published);ccee:garantia_fisica_sazo_mre_submercado(published);ccee:geracao_submercado(published);ccee:infomercado-mensal(published);ccee:lista_agente_associado(published);ccee:lista_perfil_v1(published);ccee:mre_mensal(published);ccee:parcela_carga_consumo(published);ccee:rd_encargos_contab_mensal(published);ccee:reserva_encargo(published);ccee:sumario_mensal_compra_venda_submercado(published);ccee:sumario_mensal_liquidacao(published).
Nature of the data and validation status, record by record
Each evidence record (154) has a nature and a validation status. 142 records do not have a reliably linked nature and appear as unlinked: the validation status is published, and the nature is left open instead of being guessed.
| Nature | reconciliation approved | controls approved | caveat | divergence | pending |
|---|---|---|---|---|---|
| Calculated | 3 | 2 | 2 | 0 | 0 |
| Estimated | 0 | 1 | 0 | 0 | 0 |
| Observed | 1 | 0 | 2 | 0 | 0 |
| Forecast | 0 | 0 | 1 | 0 | 0 |
| No linked nature | 57 | 30 | 55 | 0 | 0 |
- reconciliation approved
- Portuguese onlyReconciliação por caminho independente aprovada (outro arquivo, total oficial ou releitura por outro código).
- controls approved
- Portuguese onlyControles internos aprovados, sem reconciliação externa registrada.
- caveat
- Portuguese onlyRessalva: algum teste ou a reconciliação aponta limitação declarada.
- divergence
- Portuguese onlyDivergência: teste ou reconciliação reprovado.
- pending
- Portuguese onlyPendência: número publicado sem ficha de evidência com testes.
Pipeline rules: states, use, validation, horizon and time
- Use and state
- Portuguese onlyUso é eixo separado do estado: indicador, modelo (com o estado do modelo no registro), conferência, contexto ou histórico. Um conjunto que alimenta modelo em PESQUISA não é 'utilizado em modelo' em produção.
- Validation
- Portuguese onlyChecagens com resultado aprovado, ressalva, reprovado ou não aplicável; o veredito de um alvo é o pior resultado. Divergência entre total e partes publicados pela própria fonte é ressalva documentada; total calculado pela plataforma que não fecha é reprovado.
- Revision
- Portuguese onlyRevisão = troca de valor de uma mesma (série, referência) entre capturas consecutivas do mesmo arquivo (recurso); a mesma referência com valores diferentes em arquivos diferentes é conflito entre recursos, contado à parte. Publica-se quantas observações (pares série e referência) e quantas referências (períodos distintos) mudaram, em quantas séries, o período afetado e a maior mudança absoluta (na unidade da série) e relativa, além da data de cada captura que trouxe valores novos. Em cadastros e atos (registros), a mesma regra: mudança é troca de valor de um campo da mesma chave entre capturas consecutivas do mesmo arquivo; a mesma chave com valor diferente em arquivos diferentes (lista de um ano e a do seguinte, código reutilizado, mudança societária entre edições) é conflito entre recursos, contado à parte; campos que descrevem o arquivo e não o cadastro (data de geração, de processamento, de verificação) são contados em metadado_do_arquivo e não entram nas mudanças.
- Dates kept apart
- Reference period:
- Portuguese onlyInício e fim do período a que o dado se refere, no fuso e convenção da fonte.
- Published by the source on:
- Portuguese onlyData de modificação do arquivo informada pela fonte (last_modified do CKAN); vazia quando a fonte não informa ou quando não acompanha o conteúdo (PLD da CCEE).
- Captured on:
- Portuguese onlyPrimeira captura observada pelo pipeline de cada vintage (UTC).
- Generated on:
- Portuguese onlyProcessamento que gerou a gold (UTC).
- Validated on:
- Portuguese onlyExecução das validações registradas (UTC).
- Validity:
- Portuguese onlyPeríodo de validade de regra, tarifa, ato, entidade ou geometria, quando o dado tem vigência.
- Versions:
- Portuguese onlyVersão do pipeline, commit do código (versao_codigo) e id da publicação (manifesto.json).
- References legitimately later than the capture (horizon)
ccee_pld_horario: Portuguese onlyO PLD de cada hora é publicado pela CCEE na véspera.cmo_se: Portuguese onlyO CMO semanal é publicado para a semana operativa seguinte.ons_cmo_semanal_a02: Portuguese onlyO CMO semanal é publicado para a semana operativa seguinte.ons_cmo_semihorario: Portuguese onlyO CMO semi-horário do DESSEM é publicado na programação do dia seguinte.ons_rede_pdo_conversoras: Portuguese onlyProgramação diária da operação: valores programados para o dia seguinte.epe_pde: Portuguese onlyCenário do Plano Decenal (PDE 2035): horizonte futuro por definição (natureza CENARIO).aneel_continuidade: Portuguese onlyLimites regulatórios de DEC e FEC fixados pela ANEEL para anos futuros (séries de limite).aneel_subsidios_tarifarios: Portuguese onlyO dicionário do conjunto (versão 1.0, 01/03/2023) define DatSubsidio como competência do repasse de custeio homologado em ato normativo, com tipo de montante que inclui Previsão: competências futuras são repasses homologados, não observação.regulacao_documentos: Portuguese onlyAtos normativos: o período é de vigência, que pode se estender ao futuro.ons_cvu_termica: Portuguese onlyO CVU é publicado por semana operativa, inclusive a semana seguinte à publicação.
Declared limitations
- The list is the observatory's on Oct 16, 2026; a new indicator only appears at the next update.
- The Estimated label does not separate the value estimated by the source from the one estimated by the observatory: the platform has a single category for both, and no record says which of the two it is. The separation has been requested and not yet done.
- Portuguese onlyA seção 11.3 separa 'estimado pela fonte' de 'estimado pelo observatório'. O contrato de proveniência compartilhado (pipeline/energia/gold/comum.py, NATUREZAS) tem uma só categoria ESTIMADO, e nenhuma proveniência diz qual dos dois é: o eixo publica ESTIMADO sem a separação, e a mudança está pedida ao integrador (pedido 8 do documento do módulo).
Download the data (2 files)
Next question: Which data are actually validated?
Why this matters
Taxonomy of the nature of the data
Every number displayed carries a badge. The categories are never confused, and the shape of the badge changes with the category, not just the color.
- Nature of the data: ObservedValue published directly by the official or primary source.
- Nature of the data: CalculatedDeterministic transformation made by Scrutiniums, with a published formula.
- Nature of the data: EstimatedValue obtained by a statistical procedure, with uncertainty.
- Nature of the data: ForecastValue for a future period, always with model, version and source data.
- Nature of the data: ScenarioSimulation conditional on a declared hypothesis. It is not a forecast.
The weekly CMO is published by ONS as an output of the DECOMP model: for the platform it is OBSERVED (official value), with the note that it is a result of the source's model. Daily PLD averages and shares by source are CALCULATED by Scrutiniums from observed values.
Units
Measurement conventions used in this observatory, with the unit in which each source publishes:
- MWmed · Average megawatt
- Energy of a period divided by the number of hours in the period (MWh ÷ hours). It is the unit in which ONS publishes load, generation and interchange.
- MWmês · Megawatt-month
- Energy equivalent to one average megawatt over a month. It is the unit in which ONS publishes stored energy (EAR).
- p.p. · Percentage points
- Difference between two percentages: from 60% to 62% is 2 p.p. (not 2%).
Prices in reais per megawatt-hour (R$/MWh), always nominal: not adjusted for inflation. The description of the PLD dataset at CCEE records the unit only as R$; that of the weekly CMO, in the ONS dictionary, as R$/MW.
Editorial rule
Every relevant visualization answers, in this order: what am I seeing, why it matters, what changed, how to interpret it, what cannot be concluded and what the source is. The rule is mandatory in the panel component: a panel without these fields is not built.
Published classification rules
No classification ("low", "high", "outside the usual range") exists without a declared statistical rule. The rules in force, read from the published data themselves:
See the rules of each module
PLD
- Reference day
- Portuguese onlyÚltimo dia com as 24 horas publicadas para os quatro submercados.
- Daily average
- Portuguese onlyMédia aritmética simples das 24 horas do dia (horário local de Brasília).
- Historical position
- Portuguese onlyPercentil da média diária do dia de referência na distribuição das médias diárias do mesmo submercado desde 01/01/2021, em valores nominais. Faixa baixa: abaixo do 25º percentil. Central: do 25º ao 75º. Alta: acima do 75º.
- Volatility
- Portuguese onlyDesvio padrão amostral dos valores horários do período.
- Persistence
- Portuguese onlyFração das horas do período abaixo do 25º percentil, entre o 25º e o 75º e acima do 75º percentil da distribuição horária do submercado desde 01/01/2021.
- Lowest value observed in the year
- Portuguese onlyMenor valor horário observado no ano civil até o dia de referência. Não é o piso regulatório: o limite oficial vigente não foi auditado nesta fase.
- Difference between submarkets
- Portuguese onlyPara cada hora, maior valor menos menor valor entre os quatro submercados. Contam-se as horas com diferença acima de R$ 1,00/MWh; diferenças menores são tratadas como coincidência nesta contagem.
Hydrology
- SIN stored energy (EAR)
- Portuguese onlyEAR do SIN = soma das EAR verificadas dos quatro subsistemas (MWmês) ÷ soma das EAR máximas.
- Historical pattern
- Portuguese onlyMediana, 10º e 90º percentis do valor do mesmo dia do calendário nos anos completos anteriores, desde 2001. Para 29 de fevereiro usa-se 28 de fevereiro.
- Usual range
- Portuguese onlyDentro da faixa usual: entre o 10º e o 90º percentil para a data. Abaixo ou acima disso, fora da faixa usual.
- 30-day natural inflow energy (ENA)
- Portuguese onlyENA de 30 dias em % da MLT = soma da ENA bruta dos 30 dias ÷ soma da MLT implícita de cada dia (ENA ÷ percentual da MLT informado pelo ONS).
- Main deviation
- Portuguese onlyDesvio principal: subsistema com a maior distância, em pontos percentuais, entre a EAR do dia e a mediana histórica para a data.
Load
- SIN load
- Portuguese onlyCarga do SIN = soma das cargas diárias dos quatro subsistemas.
- Year-on-year comparison
- Portuguese onlyMédia dos últimos 7 ou 30 dias contra os mesmos dias do ano anterior, apenas quando os dois períodos estão no mesmo regime metodológico declarado pelo ONS.
- 12-month extreme
- Portuguese onlyMaior carga diária dos últimos 365 dias.
- Physical validation
- Portuguese onlyValor diário só é publicado se for positivo (domínio do dicionário do ONS), estiver na faixa plausível do subsistema e não saltar mais de 40% sobre a mediana da semana anterior; atípico é conferido nos componentes do balanço de energia do ONS (outro conjunto) antes de ser publicado ou posto em quarentena; dia ausente fica vazio.
Generation
- Daily average
- Portuguese onlyGeração diária por fonte = média das 24 horas verificadas (MWmed). Dias sem as 24 horas não entram.
- Share
- Portuguese onlyParticipação = geração da fonte ÷ soma da geração verificada hidráulica, térmica, eólica e solar.
- Regime
- Portuguese onlyDe 28/04/2023 para 29/04/2023, a geração solar do SIN no balanço passa de 1.991 para 4.377 MWmed (média diária); no Sul, de 0,9 para 641,9 MWmed. A descrição oficial do conjunto Carga de Energia do ONS declara que, a partir de 29/04/2023, passou a ser incorporado o valor estimado da micro e minigeração distribuída (MMGD), com base em dados meteorológicos previstos. No conjunto Geração por Usina, a MMGD aparece na mesma data como grupo próprio ("Pequenas Usinas (MMGD)", previsão do ONS), e a solar do balanço é igual, dia a dia, à soma das usinas fotovoltaicas desse conjunto com a MMGD (conferência no painel de matriz efetiva). A solar do balanço inclui a MMGD estimada desde então; comparações de composição só são feitas dentro do mesmo regime.
- Hydro, wind and solar
- Portuguese onlyHidráulica, eólica e solar somadas. Não é chamada de participação renovável porque o balanço não separa a térmica por combustível; a separação por combustível está no painel de matriz efetiva (Geração por Usina).
- Thermal context
- Portuguese onlyParticipação térmica dos últimos 7 dias comparada às participações térmicas de todas as janelas móveis de 7 dias dos 365 dias anteriores: percentil e mediana.
Grid
- Flow
- Portuguese onlyFluxo diário = média das 24 horas do intercâmbio verificado entre subsistemas, com sinal: positivo da primeira para a segunda ponta (N→NE, N→SE/CO, NE→SE/CO, S→SE/CO).
- Net balance
- Portuguese onlyIntercâmbio líquido do subsistema = média diária do intercâmbio verificado no balanço de energia do ONS; positivo significa exportação.
- Price difference
- Portuguese onlyDiferença de preço = PLD médio diário da segunda ponta menos o da primeira. Dia com diferença = diferença acima de R$ 1,00/MWh em módulo, contada nos 30 dias que terminam no dia de referência dos fluxos (dias sem PLD integrado ficam fora da contagem).
- Amplitude
- Portuguese onlyAmplitude diária = maior PLD médio diário entre os quatro submercados menos o menor.
- Limits
- Portuguese onlyLimites de intercâmbio não estão integrados; nenhuma afirmação de congestionamento é feita a partir destes dados.
Sentences and alerts of the Overview
The "the system in 60 seconds" summary and the "what to watch" list are assembled by fixed rules from the processed data; no text is written freely. Each sentence has its rule; each alert, its condition. The rules of each sentence repeat the formulas above and are in Analyze.
- Reservoirs: Portuguese onlyEAR do SIN = soma das EAR verificadas dos quatro subsistemas (MWmês) ÷ soma das EAR máximas. Mediana, 10º e 90º percentis do valor do mesmo dia do calendário nos anos completos anteriores, desde 2001. Para 29 de fevereiro usa-se 28 de fevereiro.
- Inflows: Portuguese onlyENA de 30 dias em % da MLT = soma da ENA bruta dos 30 dias ÷ soma da MLT implícita de cada dia (ENA ÷ percentual da MLT informado pelo ONS).
- Load: Portuguese onlyMédia dos últimos 7 ou 30 dias contra os mesmos dias do ano anterior, apenas quando os dois períodos estão no mesmo regime metodológico declarado pelo ONS.
- Thermal share: Portuguese onlyParticipação térmica dos últimos 7 dias comparada às participações térmicas de todas as janelas móveis de 7 dias dos 365 dias anteriores: percentil e mediana.
- PLD: Portuguese onlyMédia aritmética simples das 24 horas do dia (horário local de Brasília). Percentil da média diária do dia de referência na distribuição das médias diárias do mesmo submercado desde 01/01/2021, em valores nominais. Faixa baixa: abaixo do 25º percentil. Central: do 25º ao 75º. Alta: acima do 75º.
- Grid: Portuguese onlyFluxo diário = média das 24 horas do intercâmbio verificado entre subsistemas, com sinal: positivo da primeira para a segunda ponta (N→NE, N→SE/CO, NE→SE/CO, S→SE/CO).
- Portuguese onlyArmazenamento em nível extremo para a data: Portuguese onlyEAR do SIN abaixo do 5º ou acima do 95º percentil do mesmo dia do calendário nos anos completos anteriores (desde 2001).
- Portuguese onlyAfluência de 30 dias em nível extremo: Portuguese onlyENA do SIN acumulada em 30 dias (% da MLT) abaixo do 5º ou acima do 95º percentil da mesma janela nos anos completos anteriores (desde 2001).
- Portuguese onlyParticipação térmica extrema: Portuguese onlyParticipação térmica dos últimos 7 dias acima do 95º ou abaixo do 5º percentil das janelas de 7 dias terminadas de 7 a 371 dias antes, todas no regime do balanço iniciado em 29/04/2023.
- Portuguese onlyCarga diária entre as mais altas do ano: Portuguese onlyCarga do SIN no dia acima do 95º percentil dos 364 dias anteriores, todos no mesmo regime metodológico declarado pelo ONS.
- Portuguese onlyPreços separados entre submercados: Portuguese onlyDiferença entre o maior e o menor PLD médio diário dos quatro submercados de pelo menos 10% da média dos quatro e de pelo menos R$ 5,00/MWh.
- Portuguese onlyPLD no piso o dia inteiro: Portuguese onlyAlgum submercado com as 24 horas do dia no PLD mínimo vigente (igual ao centavo).
- Portuguese onlyPLD no teto horário ou estrutural: Portuguese onlyAlguma hora no PLD máximo horário ou média diária no PLD máximo estrutural, em algum submercado.
- Portuguese onlyRestrição de geração eólica entre as maiores do último ano: Portuguese onlyTaxa de restrição eólica do SIN em 7 dias (energia não gerada ÷ geração verificada mais não gerada) acima do 95º percentil das janelas de 7 dias terminadas de 7 a 371 dias antes.
- Portuguese onlyRestrição de geração solar centralizada entre as maiores do último ano: Portuguese onlyTaxa de restrição fotovoltaica do SIN em 7 dias acima do 95º percentil das janelas de 7 dias terminadas de 7 a 371 dias antes.
- Portuguese onlyRevisão material de dado já publicado: Portuguese onlyAlguma captura dos últimos 7 dias trouxe revisão material de série usada nesta página (EAR, ENA, carga, balanço, intercâmbio, PLD, CMO): variação de pelo menos 1% do valor anterior e acima do piso da unidade (0,1 p.p., 10 MWmed ou MWmês, R$ 0,01/MWh).
- Portuguese onlySérie de PLD sem atualização recente: Portuguese onlyÚltimo dia de PLD integrado mais de 2 dias antes da data de processamento, contada no horário de Brasília.
- Portuguese onlyFonte desta página com atualização atrasada: Portuguese onlyAlgum conjunto usado nesta página com situação ATRASADO no painel de saúde dos dados (prazo derivado da frequência declarada pela fonte).
- Portuguese onlyCMO publicado pelo ONS para a semana operativa mais recente: Portuguese onlyEvento conhecido: publicação semanal do CMO (modelo DECOMP). Não é previsão da Scrutiniums.
Forecast governance
Models have an explicit state: RESEARCH, VALIDATION, PRODUCTION or RETIRED. Only a model in PRODUCTION feeds the main forecast. Each recorded forecast gets an identifier and a fingerprint of its content (sha256); a correction creates a new record that points to the original, with a reason. Uncertainty bands are only called "80%" when the coverage measured outside the fit supports it.
See the model register and the forecast history.
General limitations of this phase
- The CCEE open data portal refuses ordinary automated queries. The observatory uses its own client, with collection authorized by the person in charge on Oct 6, 2026 for the hourly PLD, the open Market datasets and InfoMercado, and attempts the collection at each scheduled update. The PLD history from 2021 to 2025 comes from the primary captures of Sep 27, 2026. Technical detail: the refusal is an HTTP 403 with a blocked access page for curl; the pipeline client proceeds with the project's User-Agent and without disguising itself as a browser, and the captures are versioned with sha256. Latest attempt for the hourly PLD: Sep 29, 2026, 23:20 (Brasília time), successful. Oct 6, 2026 is the date of the decision by the person in charge, an authorization record, not a data date; the reference date of the catalog and health data is Oct 1, 2026. The authorized collection is later than the processing of Oct 1, 2026, 08:22 (Brasília time): 18 CCEE sources (open datasets and InfoMercado) were captured after it (the latest capture is from Oct 6, 2026, 17:01 (Brasília time)). The Market page already uses these captures; the catalog and health counts include them only in the next update.
- The regulatory limits of the PLD (floor, hourly ceiling and structural ceiling) come from ANEEL acts, with the act and the validity of each value, in the Regulation limits panel; the "lowest value observed in the year" is descriptive and is never called a floor.
- Portuguese onlyLimites de intercâmbio entre subsistemas: não há conjunto público estruturado com os limites operativos e as suas vigências; os limites estão no Relatório Quadrimestral de Limites de Intercâmbio, no SINtegre do ONS (acesso autenticado), e não foram integrados. Nenhum percentual de uso do limite é calculado. Integrados, só para citação: Documentos públicos do ONS sobre limites sistêmicos (Submódulo 9.1, PEL 2019/2020, RT-ONS DPL 0131/2023). Portuguese only(ons:documentos-limites-intercambio, publicado) Achado A06 (bloqueado por fonte não pública (limites) e resolvido para a pergunta alternativa (evidências publicadas)): Não há recurso público estruturado com os limites operativos de intercâmbio e suas vigências. O painel responde quando há evidência publicada de limitação: horas em que fluxos sistêmicos ficaram acima do limite estabelecido (ATLS) e perturbações com corte de carga. Nenhum percentual de utilização é calculado.
- Portuguese onlyCVU por usina térmica: integrado, validado e publicado.
(ons:cvu-usitermica) - Portuguese onlyGeração por usina: integrado, validado e publicado.
(ons:geracao-usina-2) - Portuguese onlyGeração térmica por motivo de despacho: integrado, validado e publicado.
(ons:geracao-termica-despacho-2) - All Learn entries have their definition checked against a primary source.
- Monetary values in nominal R$.
- The history of previous versions of the data persists in the automation cache (GitHub Actions) and has a durable copy in a published release of the repository. The original files of each collection have no copy, but the fingerprint of each one is recorded in the history. If the cache and the copy are lost, the automation opens an alert, the published data remain correct and only the record of previous revisions is lost. In engineering vocabulary: the vintage history persists in the automation cache; the silver (database with vintages and observations) has a durable copy in a release; the raw bronze files do not, but the sha256 of each one is recorded in the silver.
- When the source removes a reference from a file, the removal is not recorded: the series keeps the last value published for it. Value revisions are recorded.
Version of this publication
Latest full processing of the data: Sep 29, 2026, 23:20 (Brasília time) · collection run in that processing: yes. Processing version energia-0.1.0 · code 196905461ac0 · build failures: 0 · regressions held back: 0.
- Reference date of the data: Oct 1, 2026. The day to which the status (up to date, late) and the catalog counts apply.
- Catalog and health processed on: Oct 1, 2026, 08:22 (Brasília time). When the observatory computed the catalog and the status of each dataset.
- Indicator catalog generated on: Oct 16, 2026, 20:02 (Brasília time). When the list of rules by indicator was generated.
- Latest full processing on: Sep 29, 2026, 23:20 (Brasília time). The latest processing of all modules together.
Of the 33 published bases, 28 were generated with code that had changes not yet committed (suffix +alterado), 4 with all code committed and 1 with no code version recorded. See the version of each base. The code version is the short identifier of the version committed to the repository when the base was generated. The suffix +alterado (changed) means that, at that moment, the code had changes not yet committed: the base does not correspond exactly to the version shown, and rebuilding it from that version may give a result different from the published one. The suffix disappears when the base is generated again with all code committed.