Formatador, validador e minificador de JSON

Cole seu JSON: a ferramenta valida na hora, aponta o local exato do erro com uma explicação e entrega o resultado formatado ou minificado, pronto para copiar. Nada é enviado.

Cole ou digite o JSON – ele é validado a cada alteração.

Seu texto fica no seu navegador: não é enviado, não é salvo e não aparece no endereço da página.

Ordena as chaves de todos os objetos (inclusive os aninhados); a ordem dentro dos arrays é mantida.
Seus dados ficam salvos só neste navegador.

Resultado

Resultado
✓ JSON válido
Estatísticas
Valores: 16 · Objetos: 4 · Arrays: 1 · Chaves: 13 · Profundidade: 4 · Caracteres: 264 → 363
Saída
{ "empresa": "Exemplo Comércio Ltda.", "fundacao": 2019, "ativa": true, "faturamento": 1250000.50, "moeda": "BRL", "filiais": [ { "cidade": "São Paulo", "funcionarios": 42 }, { "cidade": "Belo Horizonte", "funcionarios": 17 } ], "contato": { "email": "contato@exemplo.com.br", "telefone": null } }

Como o cálculo é feito

O que a ferramenta verifica

As regras vêm da RFC 8259, o padrão da internet para JSON (equivalente à ECMA-404). A ferramenta lê o texto caractere por caractere com um parser próprio e para na primeira violação. A mensagem informa linha e coluna, marca o ponto com um ^ e explica o problema – igual em qualquer navegador, porque as mensagens do JSON.parse nativo variam de navegador para navegador e muitas vezes não ajudam (“Unexpected token”).

Os erros de JSON mais comuns

Formatar, minificar, ordenar

A saída é reconstruída a partir do conteúdo validado: Formatar indenta cada nível com 2 ou 4 espaços ou um tab, Minificar remove todos os espaços opcionais (arquivo menor). Números e strings são mantidos exatamente como foram escritos – ao contrário de JSON.parse + JSON.stringify, 1.0 não vira 1 e 12345678901234567890 não é arredondado. Ordenar classifica as chaves pelas unidades de código Unicode, como no JSON Canonicalization Scheme (RFC 8785): maiúsculas antes de minúsculas, letras acentuadas depois de ambas.

Avisos em vez de erros

Chaves duplicadas no mesmo objeto não são proibidas pela RFC 8259, mas não são confiáveis: a maioria dos programas fica só com o último valor. Um BOM (byte order mark) no início pode ser ignorado pelo parser – a ferramenta faz isso e avisa você.

Limites

A ferramenta verifica a sintaxe, não o significado: se faltam campos obrigatórios ou se os tipos estão certos é trabalho para um JSON Schema. As colunas contam caracteres Unicode a partir de 1 (um tab = 1 caractere); editores com largura de tab 4 mostram uma coluna maior. A entrada é limitada a 5 milhões de caracteres e 1.000 níveis de aninhamento.

Perguntas frequentes

Meu JSON é enviado ou armazenado?

Não. A validação e a formatação acontecem inteiramente no seu navegador. O texto não vai para a barra de endereço e não é salvo – só as opções (saída, indentação, ordenação) fazem parte do link.

Por que comentários e vírgula final não são permitidos?

O JSON é propositalmente mínimo para que todas as linguagens de programação o leiam da mesma forma. Comentários e vírgula final pertencem a extensões como JSON5 ou JSONC (usado, por exemplo, nas configurações do VS Code) – como JSON puro, esses arquivos são inválidos.

Meu JSON é válido, mas o programa continua recusando. Por quê?

Em geral o conteúdo não corresponde ao que o programa espera: falta um campo obrigatório, veio um número no lugar de uma string ou a estrutura é outra. Isso é descrito por um JSON Schema ou pela documentação da API. Confira também o aviso sobre chaves duplicadas.

A linha e a coluna batem com o meu editor?

A linha sempre bate. As colunas contam caracteres a partir de 1; um tab conta como um caractere, e um emoji também. Editores que exibem o tab como 4 colunas mostram um número maior. “Ir para o erro” coloca o cursor exatamente no ponto.

Como encontro o problema depois de “fim inesperado”?

Quase sempre falta fechar um } ou ] ou umas aspas. A mensagem indica a linha do colchete ou da chave que nunca foi fechada – comece olhando o final desse bloco.

Fontes e base legal

Última atualização:

Ferramentas relacionadas