Metodologia
Este é o critério que o aplicativo executa, escrito por inteiro. Ele é a fonte da verdade. Código que discordar daqui está errado, e número que aparecer aqui sem fonte citada também está.
28 min de leitura
Em 30 segundos
nota = nutrição × 0,50 + aditivos × 0,30 + processamento × 0,20
O aviso regulatório e a confiança baixa impõem teto por cima desse valor.
Eixo sem informação sai da conta e o peso é redistribuído. Nada vira zero por omissão, e nada vira nota boa por omissão.
O critério completo está abaixo, capítulo por capítulo. Abra o que interessar.
O que o 0 a 100 significa, como ele é composto e onde ficam os cortes.
A nota do Rotuz é própria. Ela junta três eixos independentes e aplica a legislação local como teto por cima. Não é o Nutri-Score reescrito com outro nome, e também não foi inventada do zero: cada eixo é um instrumento publicado, com fonte.
A ideia de simplesmente reexpressar o Nutri-Score foi considerada e descartada. Ele avalia composição nutricional e não olha para processamento nem para aditivos. Isso é um erro de produto antes de ser um erro técnico, porque a orientação alimentar oficial de vários países é construída sobre a classificação NOVA, e a regra de ouro dessas orientações fala de processamento. Um refrigerante zero tira C no Nutri-Score 2023 e continua sendo exatamente aquilo que elas mandam evitar.
componentes disponíveis D = { c : valor(c) ≠ null }
peso disponível W = Σ peso(c), c ∈ D
peso renormalizado w(c) = peso(c) / W
valor bruto V = Σ valor(c) · w(c), c ∈ D
cobertura K = W / Σ peso(c), sobre todos os componentes
confiança C = K · Π penalidades
tetos T = tetos regulatórios ∪ { teto por confiança }
nota N = clamp( round( min(V, min T) ), 0, 100 )A fórmula precisa ter três propriedades, e tem. É monotônica por eixo, então melhorar um eixo sem piorar os outros nunca baixa a nota. É fechada em 0 a 100 para qualquer entrada, mesmo entrada absurda. E não depende da ordem em que os eixos e os tetos são avaliados, porque a operação de mínimo é comutativa.
| Eixo | Peso | Instrumento | Grau da evidência |
|---|---|---|---|
| Nutrição | 0,50 | Nutri-Score 2023 | validado contra desfecho: mortalidade por todas as causas com HR 0,74, e doença cardiovascular em coorte europeia |
| Aditivos | 0,30 | curadoria própria | na maior parte perigo, não exposição; as coortes observacionais têm fatores de confusão |
| Processamento | 0,20 | NOVA 1 a 4 | certeza moderada em revisão guarda-chuva: mortalidade, doença cardiovascular, diabetes tipo 2 e câncer colorretal |
Nutrição pesa 0,50 por dois motivos. É o eixo com a melhor evidência e é de longe o mais granular, porque separa produtos dentro da mesma categoria, coisa que a NOVA não faz. Ele deve mandar na nota, mas não sozinho.
Processamento pesa 0,20 porque a evidência é boa mas o instrumento é grosso. São quatro caixas, e no supermercado a maior parte do que está embalado cai na caixa 4. Peso alto num eixo de baixa resolução achata a nota do catálogo inteiro. Com 0,20 se compra o que interessa: um NOVA 1 sai vinte pontos à frente de um NOVA 4 antes de qualquer outra consideração.
Aditivos pesa 0,30 porque é a parte que o rótulo esconde melhor. “INS 621” não comunica nada para quem está no corredor do mercado, e é aí que o Rotuz agrega o que o consumidor não consegue fazer sozinho.
| Nota | Faixa | Leitura |
|---|---|---|
| 80 a 100 | excellent | Excelente |
| 60 a 79 | good | Bom |
| 40 a 59 | fair | Regular |
| 20 a 39 | poor | Ruim |
| 0 a 19 | bad | Péssimo |
São cinco faixas de vinte pontos, e a escolha não é estética. Os tetos regulatórios e o teto por confiança são todos ditos como “não pode ser melhor que tal faixa”. Isso só se explica ao usuário numa frase se as bordas forem redondas.
| Produto | Nutrição | Processamento | Aditivos | Tetos | Nota |
|---|---|---|---|---|---|
| Feijão preto em conserva | A, vira 88 | NOVA 3, vira 50 | nenhum, vira 100 | nenhum | 84 |
| Azeite de oliva extra virgem | C, vira 52,5 | NOVA 2, vira 75 | nenhum, vira 100 | isento de lupa | 71 |
| Refrigerante de cola zero | C, vira 50 | NOVA 4, vira 0 | moderado, vira 40 | nenhum | 37 |
| Refrigerante de cola comum | E, vira 14,5 | NOVA 4, vira 0 | moderado, vira 40 | 1 lupa, teto 59 | 19 |
O refrigerante comum é o caso que justifica a arquitetura inteira. A lupa de açúcar adicionado nem chega a morder, porque os três eixos já derrubaram o produto antes. O teto existe para a situação inversa: o ultraprocessado com tabela nutricional favorável, que sem ele passaria.
Nunca só o número. Junto vêm a faixa, a confiança de 0 a 1, a versão do critério que gerou aquela nota, o valor bruto antes dos tetos, a contribuição de cada eixo com peso original e renormalizado, todo teto aplicado com a razão e quem o impôs, e os códigos de reserva, que dizem o que faltou e o que foi estimado.
Toda string que o motor emite é código em inglês, nunca texto para o usuário. São coisas como `missing_nutrients`, `excess:added_sugar` e `unclassified_additive:INS171`. Traduzir é trabalho do aplicativo, e código estável sobrevive a mudança de texto.
Peso 0,50. Nutri-Score 2023, com os limiares completos. É o eixo obrigatório.
Entre os modelos de perfil nutricional que avaliamos, o Nutri-Score é o único validado contra desfecho de saúde em coorte prospectiva. Uma revisão sistemática com meta-análise no AJCN encontrou HR 0,74 (IC95% 0,59 a 0,91) para mortalidade por todas as causas entre o melhor e o pior quintil de qualidade da dieta medida por ele. A coorte europeia de sete países repetiu o achado para doença cardiovascular. Health Star Rating e Food Compass 2.0 não têm nada equivalente.
Usamos a revisão de 2023, não a de 2017. Ela mudou os limiares de açúcar e sal, criou uma escala própria para gorduras e oleaginosas, restringiu os pontos de proteína de carne vermelha e, o que mais importa aqui, passou a penalizar adoçante não calórico em bebidas. Sem essa mudança, refrigerante zero tiraria B.
| Nutriente | Se estiver ausente |
|---|---|
| energia (kJ/100 g ou 100 ml) | eixo indisponível |
| açúcares totais | eixo indisponível |
| gordura saturada | eixo indisponível |
| sal ou sódio | eixo indisponível |
| proteína | 0 pontos positivos |
| fibra alimentar | 0 pontos positivos |
| frutas, verduras e leguminosas | 0 pontos positivos, com reserva declarada |
| adoçante não calórico | tratado como ausente, vale 0, com reserva |
| Categoria | Tabela | Regra de proteína |
|---|---|---|
| general | geral | conta se os pontos negativos forem menos de 11 |
| cheese | geral | conta sempre |
| red_meat | geral | no máximo 2 pontos, e depois a regra geral |
| fats_oils_nuts_seeds | gorduras | conta se os pontos negativos forem menos de 7 |
| beverage | bebidas | conta sempre |
| water | nenhuma | nota nutricional 100 por definição |
O Nutri-Score não se aplica a bebida alcoólica acima de 1,2 %, ervas e especiarias, café e chá secos, alimentação infantil e suplemento. O motor não inventa avaliação para essas categorias: lança `OutOfScopeError`, que é coisa diferente de `InsufficientDataError`. A distinção importa na tela. Dizer que não avaliamos bebida alcoólica é uma resposta fechada. Dizer que faltou informação sugere fotografar o rótulo, e aqui isso não resolveria nada.
O ponto entra quando o valor é estritamente maior que o limiar. A única exceção é a razão de gordura saturada, que usa maior ou igual. Não é detalhe: um produto com exatamente 3,4 g de açúcar tira 0 ponto, não 1.
Energia, geral e gorduras
kJ / 100 g, de 0 a 10 pontos
335 · 670 · 1005 · 1340 · 1675 · 2010 · 2345 · 2680 · 3015 · 3350
Energia, bebidas
kJ / 100 ml, de 0 a 10 pontos
30 · 90 · 150 · 210 · 240 · 270 · 300 · 330 · 360 · 390
Energia de gordura saturada, só gorduras
kJ / 100 g, de 0 a 10 pontos
120 · 240 · 360 · 480 · 600 · 720 · 840 · 960 · 1080 · 1200
Açúcares, geral e gorduras
g / 100 g, de 0 a 15 pontos
3,4 · 6,8 · 10 · 14 · 17 · 20 · 24 · 27 · 31 · 34 · 37 · 41 · 44 · 48 · 51
Açúcares, bebidas
g / 100 ml, de 0 a 10 pontos
0,5 · 2 · 3,5 · 5 · 6 · 7 · 8 · 9 · 10 · 11
Gordura saturada, geral e bebidas
g / 100 g, de 0 a 10 pontos
1 · 2 · 3 · 4 · 5 · 6 · 7 · 8 · 9 · 10
Razão gordura saturada sobre gordura total, só gorduras
%, de 0 a 10 pontos, com comparação de maior ou igual
10 · 16 · 22 · 28 · 34 · 40 · 46 · 52 · 58 · 64
Sal, todas as variantes
g / 100 g ou 100 ml, de 0 a 20 pontos
0,2 · 0,4 · 0,6 · 0,8 · 1,0 · 1,2 · 1,4 · 1,6 · 1,8 · 2,0 · 2,2 · 2,4 · 2,6 · 2,8 · 3,0 · 3,2 · 3,4 · 3,6 · 3,8 · 4,0
Adoçante não calórico só vale para bebidas, e quando está presente soma 4 pontos negativos. É a novidade de 2023 e é o que impede refrigerante zero de tirar B. Não ter o dado é diferente de não ter adoçante: sem lista de ingredientes legível o motor não pode afirmar nem uma coisa nem outra, então pontua 0 e emite `sweetener_unknown`, que corta a confiança. Isso nunca invalida o eixo, porque o erro fica limitado a 4 pontos.
Proteína, geral, queijo, carne vermelha e gorduras
g / 100 g, de 0 a 7 pontos
2,4 · 4,8 · 7,2 · 9,6 · 12 · 14 · 17
Proteína, bebidas
g / 100 ml, de 0 a 7 pontos
1,2 · 1,5 · 1,8 · 2,1 · 2,4 · 2,7 · 3,0
Fibra alimentar, todas as variantes
g / 100 g ou 100 ml, de 0 a 5 pontos
3,0 · 4,1 · 5,2 · 6,3 · 7,4
Frutas, verduras e leguminosas, geral e gorduras
%, de 0 a 5 pontos
40 · 60 · 80 · 80 · 80
Frutas, verduras e leguminosas, bebidas
%, de 0 a 6 pontos
40 · 40 · 60 · 60 · 80 · 80
A revisão de 2023 tirou oleaginosas e óleos especiais do componente positivo, mas manteve o óleo das frutas e verduras que o componente já admitia, e o azeite de oliva e o óleo de abacate estão entre eles. Azeite é 100 % derivado de azeitona, que é fruta, então ele leva os cinco pontos cheios. Isso não é detalhe: com o campo de frutas em 0 %, o azeite extra virgem sai C e eixo 52,5. Com 100 %, sai B e eixo 64. São doze pontos de eixo, ou seis pontos de nota final, num produto que o consumidor reconhece como saudável.
N = soma dos pontos negativos
P = pontos de proteína + fibra + FVL
bebidas e queijo → score = N − P
gorduras, oleaginosas e sementes → score = N − P se N < 7
score = N − fibra − FVL caso contrário
carne vermelha → proteína limitada a 2 pontos, e então:
demais alimentos → score = N − P se N < 11
score = N − fibra − FVL caso contrárioA proteína sai da conta quando os pontos negativos passam do limite para impedir que um produto carregado de sal e gordura compense com proteína. É o que evita que embutido tire nota boa.
| Variante | A | B | C | D | E |
|---|---|---|---|---|---|
| geral, queijo, carne vermelha | ≤ 0 | ≤ 2 | ≤ 10 | ≤ 18 | > 18 |
| gorduras, oleaginosas e sementes | ≤ −6 | ≤ 2 | ≤ 10 | ≤ 18 | > 18 |
| bebidas | só água | ≤ 2 | ≤ 6 | ≤ 9 | > 9 |
Água tem A por definição, e nenhuma outra bebida pode tirar A. É regra do algoritmo de 2023, não escolha nossa, e o motor herda ela como está.
value = topo(letra) − (pontos − piso(letra)) / (teto(letra) − piso(letra)) × 20
É interpolação linear por partes, ancorada nos cortes oficiais. Cada letra ocupa uma faixa de vinte pontos: A vai de 100 a 80, B de 80 a 60, e assim por diante. Dentro da faixa o valor varia conforme a pontuação bruta, e é isso que faz dois produtos B se distinguirem, coisa que o Nutri-Score sozinho não faz.
Os pisos e tetos internos são os cortes oficiais. Faltam os dois extremos, o piso de A e o teto de E, que a tabela oficial não define porque a letra não precisa deles. Nós precisamos, e esse é o único lugar do eixo nutricional onde existe número nosso.
| Variante | piso de A e B | teto de E |
|---|---|---|
| general, cheese, red_meat | −17 | 30 |
| fats_oils_nuts_seeds | −17 | 25 |
| beverage | −8 | 20 |
Não usamos o extremo teórico. Para bebidas o máximo teórico é 54 pontos, o que exigiria uma bebida com 4 g de sal, 11 g de açúcar, 10 g de gordura saturada e adoçante ao mesmo tempo. Ancorar em 54 comprimiria todo refrigerante real no topo da faixa E. Um refrigerante comum, de 12 pontos, sairia com 18,7 em vez de 14,5, e ficaria indistinguível de um chá gelado adoçado. Ancoramos no que existe na prateleira, não no que a álgebra permite.
O algoritmo não avalia gordura trans, não avalia açúcar adicionado (só o total) e não avalia colesterol. Trans e açúcar adicionado entram pela camada regulatória, que é onde a lei do país trata dos dois. Colesterol fica de fora de propósito, porque a evidência dietética não sustenta um eixo.
Peso 0,20. A classificação NOVA, o mapa para 0 a 100 e quando o motor pode inferir.
Esse eixo existe por dois motivos. O Nutri-Score não cobre processamento, e processamento é política pública em vários países. A NOVA nasceu em 2009 no NUPENS da USP e virou a espinha de guias alimentares oficiais, o brasileiro entre eles, cuja regra de ouro fala literalmente disso: “prefira sempre alimentos in natura ou minimamente processados e preparações culinárias a alimentos ultraprocessados”. Um aplicativo de rótulo que ignore isso está contradizendo orientação oficial de saúde.
A evidência é de certeza moderada em revisão guarda-chuva, e cobre mortalidade por todas as causas, doença cardiovascular, diabetes tipo 2 e câncer colorretal. Ela também é independente da qualidade nutricional: o estudo de complementaridade mostra que Nutri-Score e NOVA medem dimensões distintas, e as duas se associam a desfecho. É isso que autoriza somar os dois em vez de ter que escolher um.
| NOVA | O que é | Orientação oficial | Valor |
|---|---|---|---|
| 1 | in natura ou minimamente processado | “a base da alimentação” | 100 |
| 2 | ingrediente culinário | “em pequenas quantidades” | 75 |
| 3 | processado | “limite o consumo” | 50 |
| 4 | ultraprocessado | “evite” | 0 |
São quatro degraus de vinte e cinco pontos. O espaçamento uniforme é o padrão honesto aqui: o Guia ordena os quatro grupos mas não quantifica a distância entre eles, e inventar distância desigual seria acrescentar uma precisão que a fonte não tem.
NOVA 4 vale 0 e não 25 porque a orientação para o grupo 4 é evitar, não limitar. E porque com peso 0,20 o custo total de ser ultraprocessado são vinte pontos, que é a distância entre o topo de uma faixa e o topo da seguinte. Fica firme sem ser fatal, e é o que a gente quer: um ultraprocessado com boa tabela nutricional e sem aditivo de risco deve conseguir chegar ao “regular”, não ao “excelente”.
grupo NOVA declarado → usa o declarado grupo ausente, marcador presente → NOVA 4, estimated: true grupo ausente, sem marcador → eixo indisponível (null)
Marcador de ultraprocessamento é aditivo de função cosmética: corante, aromatizante, realçador de sabor, edulcorante, emulsificante, espessante, estabilizante e antiumectante, detectados pelo código INS na lista de ingredientes. A inferência só empurra a nota para baixo, e é por isso que ela é segura. O pior que pode acontecer é penalizar um produto que talvez fosse NOVA 3, e o `estimated: true` deixa o rastro para quem quiser auditar.
Peso 0,30. Quatro níveis de risco, a regra do pior aditivo e o que fazemos com código desconhecido.
A curadoria é nossa porque não existe alternativa reutilizável. O Yuka publica a metodologia dos quatro níveis, mas não publica os dados, e não tem API nem licença. O eNumbers.org tem 99 aditivos com nota, mas declara uso apenas educacional. O OpenFoodTox da EFSA, sob CC-BY, entrega IDA, NOAEL e genotoxicidade, que é insumo toxicológico e não faixa de risco. A taxonomia do Open Food Facts traz 534 aditivos com nome, sinônimo, função e parecer da EFSA em 181 deles, o que é identificação e não classificação.
Ou seja: identificação existe sob licença aberta, mas classificação é julgamento editorial e precisa ser produzida. É justamente essa parte que diferencia o produto.
| Nível | Critério | Valor |
|---|---|---|
| none | nenhum risco identificado por fonte de alta evidência nas doses de uso | 100 |
| limited | efeito leve, como desconforto digestivo, potencial alergênico ou efeito moderado na microbiota | 75 |
| moderate | efeito possível sem certeza suficiente, ou exposição relevante sem atingir o limiar | 40 |
| high | efeito grave, com evidência forte e exposição estimada acima do limiar seguro | 0 |
Cada entrada carrega também um nível de evidência obrigatório, que pode ser forte, moderado ou fraco. Os dois andam sempre juntos, e é isso que separa rigor de alarmismo.
O nível moderado vale 40 e não 50 porque a distância entre limitado e moderado é maior que a distância entre nenhum e limitado. “Limitado” descreve desconforto, e “moderado” descreve efeito plausível em desfecho crônico. Uma escala linear afirmaria que os quatro degraus são equivalentes, e eles não são.
rótulo nunca lido → null, reason: missing_ingredient_list código detectado sem classificação → null, reason: unclassified_additive:<código> nenhum aditivo detectado → 100 aditivos, todos classificados → valor do pior
Ficar indisponível não sai de graça para o produto. O peso é redistribuído, a confiança cai, e a queda de confiança pode acionar o teto. É assim que o desconhecido limita a nota em vez de melhorar ela.
Formas reconhecidas
como o rótulo costuma escrever
INS 621 · INS621 · E621 · E-621 · E 621 · (471) · 621 · INS 160a · E160a
O casamento por sinônimo cobre o que vem escrito por extenso, como “glutamato monossódico”, “corante caramelo IV” e “goma xantana”. Falso negativo é caro, porque o aditivo passa despercebido, e falso positivo é mais caro ainda, porque o eixo fica indisponível ou o produto é punido por um aditivo que ele não tem. Número solto sem prefixo só é aceito dentro do contexto da lista de ingredientes e dentro da faixa válida de códigos. Todo código detectado vai para o detalhamento junto com a forma original encontrada, e é isso que torna a detecção auditável.
| Aditivo | Sinal regulatório |
|---|---|
| E171 dióxido de titânio | proibido na União Europeia desde 2022, porque a EFSA não conseguiu excluir genotoxicidade |
| E102, E110, E122, E124, E129, E104 | os “seis de Southampton”, com advertência obrigatória na União Europeia |
| E250, E251, E252 nitritos e nitratos | para a IARC, nitrito ingerido em condição de nitrosação é provavelmente carcinogênico |
| E951 aspartame | classificado como IARC 2B em 2023; o JECFA manteve a IDA |
| E127 eritrosina | proibida em alimentos pelo FDA a partir de 2025 |
Perfil global, camada de país, e o aviso frontal aplicado como teto.
O motor é universal por construção e local por composição. Existe um perfil global que sabe avaliar comida em qualquer lugar, com os três eixos, os pesos e as tabelas. E existem perfis de país, que são o global mais o que a lei daquele país impõe. Nada além disso. O perfil global sozinho já produz uma nota defensável para qualquer produto do mundo, e é ele que responde quando o país é desconhecido.
O primeiro país implementado é o Brasil, onde a regra é a RDC 429/2020 junto com a IN 75/2020, que criam a lupa frontal de excesso de açúcar adicionado, sódio e gordura saturada. A IN 75 também traz a lista de categorias isentas no Anexo XVI, e é por isso que o azeite de oliva do exemplo aparece como isento, e não como produto sem lupa.
A parte mais importante do critério: o que acontece quando falta informação no rótulo.
| Resposta à lacuna | Quando |
|---|---|
| valor neutro conservador | quando a falta empurra a nota para baixo |
| eixo indisponível | quando a falta empurraria a nota para cima |
| recusa | quando não sobrou base para nota nenhuma |
Componente positivo do Nutri-Score ausente vale 0 ponto positivo, o que piora a nota. Como não existe risco de otimismo, também não existe penalidade de confiança. Fica só a reserva no detalhamento: `fvl_unknown`, `fiber_unknown`, `protein_unknown` e `nova_estimated`.
Nutriente negativo ausente, código INS não catalogado e lista de ingredientes ausente são o caso oposto. Assumir zero aqui seria afirmar que não tem açúcar, não tem sal e não tem aditivo de risco. Nesse caso o eixo devolve valor nulo, o peso é redistribuído entre os disponíveis, e a confiança cai por dois caminhos ao mesmo tempo: pela cobertura perdida e, quando cabe, pela penalidade.
aditivos indisponíveis: nutrição 0,50 / 0,70 = 0,714 processamento 0,20 / 0,70 = 0,286 cobertura K = 0,70
A renormalização trata o eixo ausente como se ele valesse a média dos presentes. Para um ultraprocessado cuja lista de ingredientes a gente não conseguiu ler, isso é otimista, porque é justamente o produto com mais chance de ter aditivo de risco. Sozinha ela seria uma brecha, e o teto por confiança é o que fecha essa brecha.
cobertura K = Σ peso disponível / Σ peso total confiança C = K × Π fatores
| Reserva | Fator | Por que penaliza |
|---|---|---|
| category_unknown | 0,85 | a categoria escolhe a tabela do Nutri-Score, e bebida lida como sólido pontua muito melhor do que deve |
| physical_state_unknown | 0,90 | desliga a camada regulatória inteira |
| regulatory_nutrient_unknown | 0,90 | uma lupa que talvez exista não pôde ser afirmada |
| sweetener_unknown | 0,95 | os 4 pontos de adoçante não foram aplicados; só vale para bebida ou categoria desconhecida |
| warning_exemption_estimated | 0,95 | a isenção do Anexo XVI foi adivinhada pelo motor |
A penalidade só entra quando a incerteza pode mudar o resultado. A isenção da lupa, por exemplo, só penaliza se houver ao menos uma lupa em disputa. Se nenhum nutriente cruza o limiar, não há o que a isenção decida, e cobrar por isso seria ruído. Uma penalidade que vale para todo produto não mede nada, só desloca a escala.
| Confiança | Teto | Leitura |
|---|---|---|
| 0,85 ou mais | nenhum | sem teto |
| de 0,60 a 0,85 | 79 | nunca melhor que “bom” |
| menos de 0,60 | 59 | nunca melhor que “regular” |
Os valores são bordas superiores de faixa, os mesmos usados nos tetos regulatórios. Todo teto do sistema fala a mesma língua: não pode ser melhor que tal faixa.
Medimos sobre os 35.320 produtos brasileiros do extrato do Open Food Facts, extraído em 25 de agosto de 2026.
| Campo | Cobertura |
|---|---|
| proteína | 73,6 % |
| energia | 70,4 % |
| gordura saturada | 47,9 % |
| açúcares | 45,8 % |
| sódio ou sal | 45,2 % |
| fibra | 41,4 % |
| açúcar adicionado | 26,0 % |
| categoria | 24,7 % |
| lista de ingredientes | 21,8 % |
| grupo NOVA | 17,5 % |
| frutas, verduras e leguminosas | 0,5 % |
Como toda nota diz sob qual critério ela nasceu, e o que acontece quando o critério muda.
| Muda a nota | Não muda a nota |
|---|---|
| tabela de pontos do Nutri-Score | refatoração |
| peso de um eixo | mensagem de erro |
| mapa de NOVA para 0 a 100 | nome de arquivo e formatação |
| valor de um nível de risco | versão do pacote npm |
| limiar ou teto regulatório | otimização de desempenho |
| âncoras da conversão para 0 a 100 | tipo exportado a mais |
| degraus do teto por confiança | teste novo |
| classificação de um aditivo | nada |
A última linha é a que costuma escapar. A curadoria de aditivos vive fora do motor, mas muda a nota, então ela entra na versão.
| Parte | Sobe quando |
|---|---|
| MAJOR | a nota deixa de ser comparável, por causa de eixo novo, eixo removido ou escala trocada |
| MINOR | peso, limiar ou mapa muda; a nota se move mas continua a mesma coisa |
| PATCH | correção de erro de implementação contra a especificação |
O PATCH merece atenção. Corrigir um bug muda notas, então é versão, não conserto silencioso. Um produto que pontuava errado precisa ser repontuado como qualquer outro.
Os limites declarados da nota, e o que ela não mede de propósito.
| Fora | Motivo |
|---|---|
| Selo orgânico, que o Yuka pesa em 10 % | mede modo de produção, não qualidade do alimento; a cobertura é baixa e a evidência de saúde é fraca |
| Impacto ambiental | é outra pergunta, com outra resposta; misturar as duas produz um número que não responde nenhuma delas |
| Porção declarada pelo fabricante | o fabricante escolhe o tamanho da porção; todo o cálculo é por 100 g ou 100 ml, como no Nutri-Score e nas regras de rotulagem |
| Preço | não é atributo de saúde |
| Personalização por diabetes, alergia ou meta | é uma camada em cima da nota, não a nota; a base precisa ser igual para todo mundo, senão ela não é comparável |
Existem limitações que são do dado, e não do método. A curadoria classifica o aditivo, não a quantidade dele no produto, porque o rótulo não declara essa quantidade. O efeito de misturas de aditivos tem sinal na literatura mas ainda não tem maturidade para virar regra. E a NOVA não distingue nada dentro do grupo 4, que é onde cai a maior parte do supermercado. Essa última é a lacuna que os outros dois eixos existem para cobrir.
Também existe uma limitação de cobertura, e ela é grande. Dois em cada três produtos do extrato brasileiro do Open Food Facts não têm tabela nutricional completa o bastante para gerar nota. Quando isso acontece, o aplicativo diz que não consegue avaliar e mostra o que faltou, em vez de inventar um número.
Toda fonte usada para montar o critério. Número sem fonte aqui é erro nosso.
O que esta nota não é
O Rotuz avalia a informação declarada no rótulo de um produto industrializado. Não é diagnóstico, não é prescrição e não substitui orientação de profissional de saúde. A nota não considera a sua dieta, a quantidade que você consome, alergia, intolerância, medicação nem condição clínica.
Quem responde por este critério
O Rotuz é projetado e desenvolvido pela Salve Software, que mantém esta metodologia e responde pelas notas que o aplicativo exibe.
Discorda de uma nota?
O critério é público justamente para poder ser contestado. Se um número daqui não bater com a fonte que ele cita, ou se um produto estiver classificado errado, escreva para contact@salvesoftware.com.