JSON 압축기

공백 제거로 JSON 압축 및 최소화

예시 시도

입력

압축 출력

로컬에서 실행 · 시크릿 붙여넣기 안전
압축된 JSON이 여기에 표시됩니다…

JSON 압축이란?

JSON 압축(minification)은 데이터나 구조를 변경하지 않고 JSON 문서에서 불필요한 공백 문자(공백, 탭, 줄바꿈)를 모두 제거합니다. 결과는 원본과 기능적으로 동일하지만 훨씬 작은 크기의 단일 행 문자열입니다.

Before · json
After · json
{
  "user": "alice",
  "role": "admin",
  "active": true
}
{"user":"alice","role":"admin","active":true}

왜 JSON을 압축해야 할까요?

현대 웹 애플리케이션에서는 모든 바이트가 중요합니다. 압축된 JSON은 페이로드 크기를 줄이고, API 응답 속도를 높이며, 대역폭 비용을 절감합니다. 특히 수백만 건의 요청을 처리할 때 중요합니다.

빠른 전송
더 작은 페이로드는 더 빠른 HTTP 응답, 낮은 지연 시간, 모든 네트워크 속도에서 향상된 사용자 경험을 의미합니다.
📦
대역폭 비용 절감
API와 CDN은 전송된 데이터량으로 요금을 부과합니다. JSON 페이로드를 60–80% 줄이면 대규모에서 큰 절약이 됩니다.
📱
모바일 친화적
느린 연결의 모바일 사용자가 압축된 응답에서 가장 큰 혜택을 받습니다. 데이터가 적을수록 앱이 빨라집니다.
🔒
개인정보 보호
압축은 브라우저에서 완전히 실행됩니다. 어떤 데이터도 서버로 전송되지 않습니다.

언제 압축해야 할까요?

좋은 경우
  • 클라이언트에 제공하는 API 응답
  • 프로덕션 빌드에 번들된 설정 파일
  • HTML 페이지에 삽입된 JSON
  • CDN을 통해 제공되는 정적 데이터 파일
  • 모든 KB가 중요한 모바일 앱 페이로드
피해야 할 경우
  • 직접 편집하는 설정 파일
  • 읽어야 하는 디버그 로그
  • 버전 관리 중인 JSON (diff 가독성 저하)
  • 이미 gzip/Brotli로 압축된 파일
  • 공유 스키마나 문서 파일

주요 사용 사례

REST API 응답
API에서 JSON을 제공하기 전에 압축하여 응답 시간과 대역폭 사용량을 줄입니다.
프론트엔드 빌드 파이프라인
압축된 JSON 데이터 파일을 JavaScript 빌드에 직접 번들하여 무비용 정적 자산을 구현합니다.
설정 파일
Docker 이미지, Lambda 레이어 또는 환경 변수에 컴팩트한 설정 JSON을 삽입합니다.
데이터 내보내기 / 가져오기
압축된 JSON을 내보내 더 빠른 업로드, 더 작은 아카이브, 더 효율적인 데이터 파이프라인을 실현합니다.
WebSocket 메시지
자주 JSON 메시지를 보내는 실시간 앱은 메시지 크기 감소에서 큰 혜택을 받습니다.
임베디드 기기 및 IoT
메모리와 대역폭이 제한된 기기에는 가능한 가장 작은 JSON 페이로드가 필요합니다.

압축 vs HTTP 압축

JSON 압축과 HTTP 압축은 상호 보완적입니다. 둘 다 적용하면 최상의 결과를 얻을 수 있습니다.

기법
크기 감소
적용 시점
Minification
60–80%
빌드 시 / 수동
gzip
70–90%
HTTP 계층 (자동)
Brotli
75–95%
HTTP 계층 (자동)
Minify + Brotli
92–98%
두 가지 모두

코드에서 압축하기

외부 라이브러리 없이 모든 언어에서 프로그래밍 방식으로 JSON을 압축할 수도 있습니다.

JavaScript / Node.js
JSON.stringify(JSON.parse(input))
Python
json.dumps(json.loads(input), separators=(',', ':'))
CLI (jq)
cat data.json | jq -c .
Go
json.Compact(&buf, data)

자주 묻는 질문

압축하면 데이터가 변경되나요?
아니요. 압축은 의미 없는 공백 문자만 제거합니다. 모든 키, 값, 배열, 객체는 정확히 동일하게 유지됩니다.
압축된 JSON은 유효한 JSON인가요?
네 — 완전히 유효합니다. 모든 JSON 파서가 읽을 수 있습니다. 공백 문자는 JSON 데이터 모델의 일부가 아닙니다.
JSON이 얼마나 작아지나요?
원본의 공백량에 따라 다르지만 일반적으로 20–60% 작아집니다. 들여쓰기가 깊은 파일이 가장 많이 압축됩니다.
gzip 전에 압축해야 하나요, 후에 압축해야 하나요?
먼저 JSON을 압축한 다음 서버에서 gzip 또는 Brotli를 적용하세요. 두 기법은 서로 다른 수준에서 작동하며 함께 사용하면 효과적입니다.
주석이 있는 JSON을 압축할 수 있나요?
표준 JSON은 주석을 지원하지 않습니다. 파일에 // 또는 /* */ 주석(JSONC/JSON5)이 있다면 유효한 JSON이 아니므로 먼저 제거해야 합니다.