Nén JSON (JSON Minification) là quá trình loại bỏ tất cả các ký tự trắng không cần thiết trong văn bản JSON (khoảng trắng, ký tự xuống dòng \n, ký tự tab \t, ký tự về đầu dòng \r) và chú thích (không chuẩn nhưng phổ biến), chuyển JSON định dạng thụt lề nhiều lớp thành định dạng gọn một dòng. Nén JSON không thay đổi bất kỳ nội dung dữ liệu nào — tên khóa, giá trị, kiểu dữ liệu (chuỗi/số/boolean/null/mảng/đối tượng), cấu trúc lồng nhau hoàn toàn giữ nguyên, chỉ loại bỏ khoảng trắng định dạng dùng cho con người đọc.
Giá trị cốt lõi của nén JSON là giảm kích thước dữ liệu. Khoảng trắng thụt lề và xuống dòng trong JSON định dạng mặc dù thân thiện với nhà phát triển, nhưng là byte dư thừa khi truyền và lưu trữ mạng. Ví dụ một phản hồi API điển hình, sau khi định dạng có thể 2KB, sau khi nén có thể chỉ 1.2-1.5KB, kích thước giảm 25%-40%. Trong tình huống API đồng thời cao, môi trường mạng yếu di động, phân phối tệp cấu hình quy mô lớn, nén JSON có thể giảm đáng kể tiêu thụ băng thông, tăng tốc độ truyền, giảm chi phí máy chủ. Trong môi trường production thường kết hợp với nén HTTP như Gzip/Brotli cùng sử dụng, nhưng JSON Minify như nén tầng nội dung vẫn không thể thay thế.
Việc triển khai nén JSON rất đơn giản: dùng JSON.parse() phân tích văn bản thành đối tượng JavaScript, rồi dùng JSON.stringify(obj) không có tham số thụt lề tuần tự hóa đầu ra — đó chính là cách triển khai cốt lõi của công cụ này. Cách parse + stringify này tự nhiên đảm bảo JSON đầu ra hợp lệ 100%, còn có thể tự động loại bỏ chú thích bất hợp pháp và dấu phẩy đuôi (phối hợp sửa lỗi). Cần lưu ý: nén JSON và nén Gzip là tối ưu hai tầng khác nhau — JSON Minify là tầng nội dung loại bỏ khoảng trắng dư thừa, Gzip là thuật toán nén chung tầng truyền, cả hai có thể sử dụng chồng lên nhau.