# Formatador e validador JSON

> Formatar JSON online, validar e minificar. Erros com linha e coluna, correção de vírgulas sobrando e aspas simples em um clique, números grandes preservados.

URL: https://acrafto.com/pt/formatador-validador-json/  
Updated: 2026-10-03

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Para formatar JSON online, cole o documento no campo acima e este formatador e validador JSON o verifica enquanto você digita. Uma entrada válida é exibida formatada com a indentação que você escolher, ou minificada em uma única linha. Uma entrada inválida recebe um erro preciso com linha e coluna, um trecho destacado e, para os erros mais comuns, uma correção com um clique. Tudo roda no seu navegador, então respostas de API, arquivos de configuração e exportações nunca saem do seu computador.

## O que este formatador e validador JSON faz

- **Formatar JSON** com 2 espaços, 4 espaços ou tabulação. A saída mantém a ordem original das chaves, a menos que você marque *Ordenar chaves*.
- **Minificar JSON** removendo todos os espaços e quebras de linha. O indicador de tamanho abaixo do resultado mostra quantos bytes você economizou.
- **Validar JSON** em tempo real conforme a [RFC 8259](https://datatracker.ietf.org/doc/html/rfc8259), o padrão JSON atual. A linha de status fica verde assim que o documento está correto.
- **Corrigir erros comuns** automaticamente: vírgulas sobrando no final, aspas simples, chaves sem aspas, comentários, `True`, `None` e `NaN` no estilo Python, números como `.5` ou `+1`.
- **Carregar arquivos** com o botão *Abrir arquivo* ou arrastando um arquivo `.json` para a entrada. Depois é só baixar o resultado ou mandá-lo de volta para a entrada para mais uma passada.

## Por que a mensagem de erro importa mais do que a cor vermelha

A maioria dos validadores online só diz que algo está errado. Os navegadores não ajudam muito mais: `JSON.parse` no Chrome informa `Unexpected token } in JSON at position 148`, enquanto o Firefox diz `expected property name or '}'`, e nenhum dos dois indica em qual linha procurar. Esta ferramenta tem um parser próprio que guarda onde cada token começa. Quando ele para, você recebe a linha e a coluna, um trecho dessa linha com um sinal ^ embaixo do caractere problemático e uma dica em linguagem simples, como *Provavelmente falta uma vírgula entre duas propriedades*. O botão *Ir para o erro* leva o cursor direto para essa posição na entrada.

Os erros mais frequentes que vemos em documentos colados:

| Entrada | Problema | JSON correto |
| --- | --- | --- |
| `{'name': 'Ada'}` | aspas simples | `{"name": "Ada"}` |
| `{name: "Ada"}` | chave sem aspas | `{"name": "Ada"}` |
| `[1, 2, 3,]` | vírgula sobrando no final | `[1, 2, 3]` |
| `{"a": 1 "b": 2}` | vírgula faltando | `{"a": 1, "b": 2}` |
| `{"ok": True}` | literal do Python | `{"ok": true}` |
| `{"x": 007}` | zero à esquerda | `{"x": 7}` ou `{"x": "007"}` |
| `// comment` | comentário | não permitido em JSON |

O botão *Corrija para mim* corrige todos esses casos, exceto a vírgula faltando e o zero à esquerda. A correção é conservadora de propósito: ela nunca tenta adivinhar onde falta uma vírgula, porque inserir uma no lugar errado muda o significado dos dados, e `007` pode ser tanto o número 7 quanto um código. Nesses casos, você recebe a posição exata.

## Números grandes, ordem das chaves e outras coisas que costumam quebrar

Muitos formatadores funcionam chamando `JSON.parse` e depois `JSON.stringify`. Essa ida e volta danifica os dados sem avisar. Um ID do Twitter ou do Snowflake como `1234567890123456789` ultrapassa o limite de 2^53 dos números em JavaScript e volta como `1234567890123456800`. O valor `1.0` vira `1`, e `1e3` vira `1000`. Este formatador nunca converte números para ponto flutuante. Ele copia cada literal exatamente como foi escrito, então a saída é uma reformatação fiel da entrada, não uma reinterpretação dela. O mesmo vale para as sequências de escape dentro de strings: `"\u00e9"` continua `"\u00e9"` e não é transformado em `"é"`.

A ordem das chaves também é preservada. A especificação do JSON diz que os membros de um objeto não têm ordem, mas arquivos de configuração, fixtures de teste e revisões de código ficam muito mais legíveis quando a ordem é estável. Se você prefere uma forma canônica, por exemplo para comparar duas respostas de API em uma ferramenta de diff, ative *Ordenar chaves* e os dois documentos vão listar as propriedades em ordem alfabética em todos os níveis de aninhamento.

## Formatar JSON ou minificar JSON: quando usar cada um

JSON formatado é para pessoas. Use quando for revisar uma resposta de API, escrever um `package.json`, um `tsconfig.json` ou um documento OpenAPI, ou quando guardar fixtures em um repositório em que os diffs devem mostrar uma mudança por linha. Dois espaços é a convenção no mundo JavaScript, quatro espaços é comum em projetos Python e .NET, e a tabulação deixa cada leitor escolher a largura que preferir.

JSON minificado é para máquinas. Os espaços em branco costumam ocupar de 20 a 40 por cento de um documento formatado, então removê-los reduz o que é enviado aos navegadores, os valores guardados no Redis ou em uma coluna do banco de dados e os atributos `data-*` incorporados no HTML. O gzip diminui parte dessa diferença, mas a versão minificada ainda fica menor depois de comprimida. O indicador de tamanho abaixo do resultado mostra a diferença exata para o seu documento.

## Como formatar JSON no terminal e nos editores

Para arquivos que você processa com frequência, uma ferramenta de linha de comando é mais rápida do que qualquer site. `jq . file.json` formata, `jq -c . file.json` minifica e `python -m json.tool file.json` funciona em qualquer máquina com Python instalado. O Visual Studio Code formata JSON com Shift+Alt+F e o valida contra um schema quando você adiciona a propriedade `$schema`. Esta página é para os outros casos: uma resposta copiada da aba Rede das ferramentas de desenvolvedor, uma linha de log, um trecho de configuração de uma wiki ou uma verificação rápida em uma máquina onde você não pode instalar nada.

Ferramentas relacionadas neste site: o [codificador e decodificador Base64](https://acrafto.com/pt/encoder-decoder-base64-online/) decodifica a parte de dados (payload) de um JWT, que é JSON codificado em Base64url. O [conversor de timestamp UNIX](https://acrafto.com/pt/conversor-timestamp-unix/) transforma os números `createdAt` presentes na maioria das respostas de API em datas legíveis, e o [decodificador de UUID](https://acrafto.com/pt/analise-uuid/) mostra a versão e o timestamp dos identificadores nos seus dados. Mais utilitários estão em [ferramentas para desenvolvedores](https://acrafto.com/pt/desenvolvedores/).

## Perguntas frequentes

### Meu JSON é enviado para algum servidor?

Não. A análise, a formatação e a correção rodam inteiramente no seu navegador, em JavaScript. Depois que a página carrega, você pode desligar a internet e a ferramenta continua funcionando. Nada é registrado nem armazenado.

### Por que o validador rejeita comentários se o meu editor aceita?

Os comentários foram retirados do JSON de propósito pelo seu criador, Douglas Crockford, para evitar que o formato fosse usado para diretivas de parser. Arquivos como `tsconfig.json` ou `.vscode/settings.json` são, tecnicamente, JSONC, um superconjunto que os editores suportam. Parsers estritos em APIs, bancos de dados e na maioria das linguagens de programação os rejeitam. O botão de correção remove os comentários para que o resultado seja válido em qualquer lugar.

### Posso formatar JSON Lines ou vários objetos de uma vez?

Um documento JSON contém exatamente um valor. Se você colar vários objetos separados por vírgulas ou quebras de linha, o validador para no primeiro valor a mais. Coloque todos entre colchetes para formar um array e depois formate. O botão de correção não faz isso automaticamente porque não tem como saber se a entrada deveria ser um único documento.

### Qual é o tamanho máximo?

Não há um limite fixo. Documentos de alguns megabytes são formatados em bem menos de um segundo em um notebook. O destaque de sintaxe é desativado acima de cerca de 400 kB para manter a página responsiva, mas copiar e baixar continuam funcionando.

### Ordenar as chaves altera os dados?

Não. Os objetos em JSON não têm ordem por definição, veja o [artigo sobre JSON na Wikipédia](https://pt.wikipedia.org/wiki/JSON), então um parser lê o documento ordenado e o original como o mesmo valor. Os arrays nunca são reordenados, porque a ordem deles faz parte dos dados.

### Como escapar JSON para colocá-lo dentro de uma string?

Primeiro minifique, depois escape cada barra invertida e cada aspa dupla. Muitas linguagens fazem isso diretamente: `JSON.stringify(JSON.stringify(obj))` em JavaScript ou `json.dumps(json.dumps(obj))` em Python produzem uma string JSON que contém o texto JSON.

## Other languages

- Čeština (cs): [JSON formatter a validátor](https://acrafto.com/cs/json-formatter-validator/) ([Markdown](https://acrafto.com/cs/json-formatter-validator/index.md))
- Slovenčina (sk): [JSON formatter a validátor](https://acrafto.com/sk/json-formatter-validator-online/) ([Markdown](https://acrafto.com/sk/json-formatter-validator-online/index.md))
- English (en): [JSON Formatter and Validator](https://acrafto.com/en/json-formatter-validator/) ([Markdown](https://acrafto.com/en/json-formatter-validator/index.md))
- Deutsch (de): [JSON Formatter & Validator](https://acrafto.com/de/json-formatter-validator/) ([Markdown](https://acrafto.com/de/json-formatter-validator/index.md))
- Français (fr): [JSON Formatter et validateur](https://acrafto.com/fr/formateur-validateur-json/) ([Markdown](https://acrafto.com/fr/formateur-validateur-json/index.md))
- Español (es): [Formateador y validador JSON](https://acrafto.com/es/formateador-validador-json/) ([Markdown](https://acrafto.com/es/formateador-validador-json/index.md))
- Italiano (it): [JSON formatter e validatore](https://acrafto.com/it/json-formatter-validatore-online/) ([Markdown](https://acrafto.com/it/json-formatter-validatore-online/index.md))
- Nederlands (nl): [JSON formatter & validator](https://acrafto.com/nl/json-formatter-validator/) ([Markdown](https://acrafto.com/nl/json-formatter-validator/index.md))
- Polski (pl): [JSON Formatter i walidator](https://acrafto.com/pl/json-formatter-i-walidator/) ([Markdown](https://acrafto.com/pl/json-formatter-i-walidator/index.md))
- Română (ro): [JSON formatter și validator](https://acrafto.com/ro/json-formatter-validator/) ([Markdown](https://acrafto.com/ro/json-formatter-validator/index.md))
- Magyar (hu): [JSON formatter és validátor](https://acrafto.com/hu/json-formatter-validator/) ([Markdown](https://acrafto.com/hu/json-formatter-validator/index.md))
- Ελληνικά (el): [JSON formatter και validator](https://acrafto.com/el/json-formatter-validator/) ([Markdown](https://acrafto.com/el/json-formatter-validator/index.md))
- Български (bg): [JSON formatter и валидатор](https://acrafto.com/bg/json-formatter-validator/) ([Markdown](https://acrafto.com/bg/json-formatter-validator/index.md))
- Hrvatski (hr): [JSON formatter i validator](https://acrafto.com/hr/json-formatter-validator-online/) ([Markdown](https://acrafto.com/hr/json-formatter-validator-online/index.md))
- Slovenščina (sl): [JSON formatter in validator](https://acrafto.com/sl/json-formatter-validator/) ([Markdown](https://acrafto.com/sl/json-formatter-validator/index.md))
- Eesti (et): [JSON formatter ja validaator](https://acrafto.com/et/json-formatter-validaator/) ([Markdown](https://acrafto.com/et/json-formatter-validaator/index.md))
- Latviešu (lv): [JSON formatter un validētājs](https://acrafto.com/lv/json-formatter-validetajs/) ([Markdown](https://acrafto.com/lv/json-formatter-validetajs/index.md))
- Lietuvių (lt): [JSON Formatter ir validatorius](https://acrafto.com/lt/json-formatter-validatorius/) ([Markdown](https://acrafto.com/lt/json-formatter-validatorius/index.md))
- Svenska (sv): [JSON formatter och validator](https://acrafto.com/sv/json-formatter-validator/) ([Markdown](https://acrafto.com/sv/json-formatter-validator/index.md))
- Dansk (da): [JSON formatter og validator](https://acrafto.com/da/json-formatter-validator/) ([Markdown](https://acrafto.com/da/json-formatter-validator/index.md))
- Suomi (fi): [JSON formatter ja validaattori](https://acrafto.com/fi/json-formatter-validaattori/) ([Markdown](https://acrafto.com/fi/json-formatter-validaattori/index.md))
- Norsk (no): [JSON formatter og validator](https://acrafto.com/no/json-formatter-validator/) ([Markdown](https://acrafto.com/no/json-formatter-validator/index.md))
- Українська (uk): [JSON Formatter і валідатор](https://acrafto.com/uk/json-formatter-i-validator/) ([Markdown](https://acrafto.com/uk/json-formatter-i-validator/index.md))
- Русский (ru): [JSON formatter и валидатор](https://acrafto.com/ru/json-formatter-validator/) ([Markdown](https://acrafto.com/ru/json-formatter-validator/index.md))
- Српски (sr): [JSON formatter i validator](https://acrafto.com/sr/json-formatter-i-validator/) ([Markdown](https://acrafto.com/sr/json-formatter-i-validator/index.md))
- Македонски (mk): [JSON Formatter & Validator](https://acrafto.com/mk/json-formatter-validator/) ([Markdown](https://acrafto.com/mk/json-formatter-validator/index.md))
- Bosanski (bs): [JSON formatter i validator](https://acrafto.com/bs/json-formatter-validator/) ([Markdown](https://acrafto.com/bs/json-formatter-validator/index.md))
- Shqip (sq): [JSON Formatter dhe validues](https://acrafto.com/sq/json-formatter-validues/) ([Markdown](https://acrafto.com/sq/json-formatter-validues/index.md))
- Türkçe (tr): [JSON formatter ve doğrulayıcı](https://acrafto.com/tr/json-formatter-dogrulayici/) ([Markdown](https://acrafto.com/tr/json-formatter-dogrulayici/index.md))
- 日本語 (ja): [JSON整形ツール](https://acrafto.com/ja/json-formatter-validator/) ([Markdown](https://acrafto.com/ja/json-formatter-validator/index.md))
- 한국어 (ko): [JSON 정렬 및 검사기](https://acrafto.com/ko/json-formatter-validator/) ([Markdown](https://acrafto.com/ko/json-formatter-validator/index.md))
- العربية (ar): [تنسيق JSON والتحقق منه](https://acrafto.com/ar/json-formatter-validator/) ([Markdown](https://acrafto.com/ar/json-formatter-validator/index.md))
- हिन्दी (hi): [JSON Formatter और Validator](https://acrafto.com/hi/json-formatter-validator/) ([Markdown](https://acrafto.com/hi/json-formatter-validator/index.md))
- Bahasa Indonesia (id): [JSON formatter dan validator](https://acrafto.com/id/json-formatter-validator/) ([Markdown](https://acrafto.com/id/json-formatter-validator/index.md))
- Tiếng Việt (vi): [JSON Formatter và Validator](https://acrafto.com/vi/json-formatter-kiem-tra-json/) ([Markdown](https://acrafto.com/vi/json-formatter-kiem-tra-json/index.md))
- ไทย (th): [JSON Formatter & Validator](https://acrafto.com/th/json-formatter-validator/) ([Markdown](https://acrafto.com/th/json-formatter-validator/index.md))
- עברית (he): [JSON Formatter ובדיקת תקינות](https://acrafto.com/he/json-formatter-validator/) ([Markdown](https://acrafto.com/he/json-formatter-validator/index.md))
