·2분 읽기
JSON Pretty Print vs Minify — 언제 어떤 걸 써야 할지 실전 정리
JSON을 읽기 좋게 포맷팅할지 압축할지 상황별 판단 기준을 정리했어요. API 응답, 설정 파일, 로그, DB 저장 각 상황의 정답을 담았어요.

{ }
JSON 포맷터 바로 사용하기
JSON을 예쁘게 정렬하고 검증하세요
→
같은 데이터, 다른 포맷
**JSON Pretty Print**는 들여쓰기·줄바꿈 추가해서 사람이 읽기 좋게 만드는 거예요. **Minify**는 공백·줄바꿈 다 제거해서 용량을 줄이는 거예요. 둘 다 같은 데이터지만 용도가 달라요.
저도 초보 때 늘 Pretty Print로 저장했는데, 프로덕션 API 응답이 50KB 넘어가니 속도 문제가 생겼어요. 상황에 맞는 포맷 선택이 생각보다 중요해요.
1. 용량 차이 실측
같은 JSON 파일의 포맷별 크기예요.
| 데이터 | Pretty (2칸 들여쓰기) | Minify |
|------|---------------------|--------|
| API 응답 (10개 객체) | 2.4 KB | 1.1 KB |
| 설정 파일 (30 키) | 1.8 KB | 0.9 KB |
| 로그 엔트리 (1줄) | 0.5 KB | 0.2 KB |
**평균 50~60% 용량 절감**이에요. 대용량 API에선 네트워크 비용과 로딩 시간에 직결돼요.
2. Pretty Print가 정답인 상황
- **개발 중 디버깅**: 눈으로 구조 확인 필수
- **설정 파일**: 사람이 편집하는 `.json` 설정
- **API 문서 예시**: Swagger·Readme에 게재할 샘플
- **git diff 최적화**: 줄 단위 변경 추적 쉬움
설정 파일을 minify하면 유지보수 악몽이에요. 한 줄에 모든 게 있으면 어디가 바뀌었는지 알 수 없어요.
3. Minify가 정답인 상황
- **프로덕션 API 응답**: 네트워크 비용 절감
- **로그 엔트리**: 한 이벤트 = 한 줄 (parsing 쉬움)
- **DB 저장**: 컬럼 크기 절약
- **Message Queue 페이로드**: Kafka·RabbitMQ 트래픽 최적화
- **localStorage·sessionStorage**: 5MB 한도 절약
API 응답을 Pretty Print로 보내면 **모바일 사용자 데이터 요금에 직접 영향**이에요.
4. 자동 변환 파이프라인
실무에서는 보통 이런 흐름이에요.
```
[개발: Pretty JSON 설정] → [빌드: Minify] → [배포: 압축된 JSON]
↓
[DB에는 Minify로 저장]
↓
[API 응답: Minify + gzip]
↓
[프론트엔드: 파싱 후 객체로 사용]
```
코드 레벨에서 관리하면 수동 실수를 없앨 수 있어요.
```javascript
// Node.js Express 예시
app.get('/api/data', (req, res) => {
const data = getData();
res.json(data); // 기본 minify 출력
});
```
5. Toolkio JSON Formatter 두 가지 모드
Toolkio는 Pretty Print와 Minify 버튼을 둘 다 제공해요. 클릭 한 번에 전환 가능하고, 파일 업로드도 지원해요. 개발 디버깅엔 Pretty, 배포 전 체크엔 Minify 조합으로 쓰세요.