Squoosh가 다른 온라인 이미지 압축 도구보다 뛰어난 이유

· nologin.tools
tools review browser open-source

Hero image

대부분의 온라인 이미지 압축 도구는 같은 방식으로 작동해요. 파일을 서버에 업로드하면 백엔드에서 압축을 처리하고, 더 작아진 파일을 돌려주는 방식이죠. 단순하긴 하지만, 그 과정에서 여러분의 이미지 — 제품 사진, 고객 사진, 기밀 목업 — 가 누군가의 서버에 일정 시간 동안 저장돼요. 그들의 데이터 보관 정책을 믿어야 하고, 보안도 믿어야 해요.

Squoosh는 달라요. 모든 압축 과정이 브라우저 탭 안에서 일어나요. 어떤 데이터도 내 기기를 벗어나지 않아요. 그런데 신기하게도, 완전히 클라이언트 측에서 실행됨에도 불구하고 대부분의 서버 기반 도구보다 더 작은 파일을 만들어 내요.

내부에서 무슨 일이 벌어지고 있을까요

Squoosh가 서버 없이 전문적인 압축을 실행할 수 있는 비결은 WebAssembly예요. Google Chrome Labs가 MozJPEG, OxiPNG, libwebp, libavif, JPEG XL 같은 코덱을 WASM 모듈로 컴파일했고, 이 모듈들이 브라우저에서 네이티브에 가까운 속도로 실행돼요.

여기서 쓰이는 MozJPEG는 Mozilla가 기존 JPEG 인코더를 개선하기 위해 개발한 바로 그 MozJPEG예요. libavif도 실제 프로덕션 시스템에서 쓰이는 것과 같아요. Squoosh는 JavaScript로 재구현한 버전이 아니에요 — 실제 압축 라이브러리를 다른 대상으로 컴파일한 것이에요. 결과물의 품질은 커맨드라인 도구와 동등해요.

개인정보 보호 측면에서는 이렇게 볼 수 있어요. 업로드가 없으니 서버도 없고, 읽어야 할 데이터 보관 정책도 없고, 제3자가 전혀 개입하지 않아요. 압축하는 파일이 내 기기를 절대 떠나지 않아요. 이건 마케팅 문구가 아니라, 도구의 작동 방식에서 나오는 기술적인 결과예요.

지원하는 형식 (그리고 왜 중요한지)

Squoosh가 단순한 도구들보다 앞서는 부분이 바로 여기예요. 대부분의 온라인 압축 도구는 JPEG와 PNG를 처리해요. WebP를 지원하는 것도 있어요. Squoosh는 다음을 지원해요:

형식인코더최적 용도
JPEGMozJPEG사진, 고색상 이미지
PNGOxiPNG화면 캡처, 투명도가 있는 그래픽
WebPlibwebp웹 이미지, 브라우저 지원 우수
AVIFlibavif최신 브라우저, 최고의 압축률
JPEG XLjxl미래 형식, 뛰어난 품질
WebP2Experimental연구/테스트 전용

AVIF는 알아둘 만한 형식이에요. AV1 동영상 코덱에서 파생되었고, 동등한 화질에서 WebP보다 20~50% 더 작은 파일을 만들어 내요. JPEG보다는 50% 이상 작아요. AVIF에 대한 Google의 연구에서도 대부분의 이미지 유형에서 다른 형식보다 우수하다는 것을 보여줘요. 브라우저 지원도 이제 Chrome, Firefox, Safari, Edge 모두 포함되어 — 실제 프로덕션에서 바로 사용할 수 있어요.

Squoosh는 아무것도 설치하지 않고 AVIF로 직접 인코딩할 수 있어요. TinyPNG는 AVIF를 지원하지 않아요. Convertio는 지원하지만 서버에 업로드해야 해요. 비공개로 유지하고 싶은 이미지를 다룰 때 이 차이는 중요해요.

나란히 비교: 다른 도구에는 없는 기능

Squoosh의 가장 유용한 점은 코덱 선택조차 아니에요. 바로 비교 슬라이더예요.

Squoosh에서 이미지를 열면 분할 화면이 나타나요. 한쪽은 원본, 다른 쪽은 압축된 결과물이에요. 구분선을 좌우로 드래그해서 비교해요. 품질 설정을 조정할 때마다 파일 크기가 실시간으로 업데이트돼요. 압축 아티팩트가 어디서 나타나기 시작하는지 정확히 볼 수 있고, 품질 슬라이더를 조금씩 올려서 사라질 때까지 조정할 수 있어요.

단순하게 들리죠. 실제로도 단순해요. 하지만 이걸 이렇게 잘 구현한 로그인 없는 이미지 도구는 없어요. TinyPNG는 품질 조절 없이 자동으로 압축해요 — 결과를 그대로 받아들여야 해요. Convertio는 숫자로 품질을 설정할 수 있지만 시각적 피드백이 없어요. Squoosh는 트레이드오프를 실시간으로 보여줘서 숫자를 추측하는 대신 정보를 바탕으로 결정을 내릴 수 있어요.

파일 크기 표시는 절댓값(예: “1.2 MB → 340 KB”)과 퍼센트 감소율을 모두 보여줘요. 결정을 내리는 데 필요한 정보가 바로 이거예요. “최적화 완료!”가 아니라 실제 숫자로요.

주요 대안들과의 비교

웹 프로젝트에서 이미지를 압축해야 할 때 자주 쓰이는 도구로는 TinyPNG, Convertio, iLoveIMG 같은 서비스들이 있어요. 이 모두 파일 업로드가 필요해요. 무료 요금제에는 파일 크기 제한이 있어요. 대부분 사용량 제한도 있어요.

TinyPNG는 빠르고 PNG, JPEG에서 좋은 결과를 내지만, 품질 조절을 노출하지 않는 자체 압축 알고리즘을 사용해요. 무료 등급은 월 20개 파일로 제한돼요. AVIF나 JPEG XL을 지원하지 않아요. 그리고 파일은 네덜란드에 있는 서버로 전송돼요.

Convertio는 다양한 형식을 지원하고 형식 변환 작업에 정말 유용해요. 하지만 무료 계정은 하루 10회 변환, 100 MB 파일 크기로 제한돼요. 변환이 서버에서 일어나는데, 민감하지 않은 파일이라면 괜찮아요.

Squoosh는 파일 크기 제한도, 변환 횟수 제한도, 계정 요구사항도 없어요. “무료 등급”이라는 개념 자체가 없어요. 서버 인프라 비용이 없거든요. 유일한 제약은 브라우저의 메모리인데, 매우 큰 이미지(5천만 화소 이상의 RAW 파일)에서만 문제가 돼요.

Squoosh의 단점은 한 번에 파일 하나만 처리한다는 거예요. 한 세션에서 제품 사진 200장을 압축해야 한다면 웹 인터페이스는 적합하지 않아요. 일괄 압축에는 Squoosh CLI가 답이에요 — npm 패키지(npx @squoosh/cli)로 제공되고 웹 UI와 동일한 인코더를 지원해요.

오픈 소스라는 것의 의미

Squoosh는 Apache 2.0 라이선스로 GitHub에 오픈 소스로 공개되어 있어요. 코드베이스가 공개되어 있고, 압축은 로컬에서 일어나며, Google Chrome Labs가 WebAssembly가 브라우저에서 할 수 있는 것을 보여주는 사례 연구로 유지 관리해 왔어요.

이게 중요한 이유는 몇 가지예요. 도구가 파일로 무언가 예상치 못한 일을 하는지 확인할 수 있어요 — 서버가 없으니 숨길 것도 없어요. 원한다면 직접 인스턴스를 호스팅할 수도 있어요. 그리고 오픈 소스이기 때문에 커뮤니티가 WASM 코덱 구현의 개선 사항을 감사할 수 있어요.

WebAssembly로 구축된 브라우저 기반 도구에 대해 더 알고 싶다면, Datasette Lite 프로젝트도 좋은 예예요 — 브라우저 탭에서 실행되는 완전한 SQLite 데이터베이스예요. WASM 트렌드는 주목할 가치가 있어요. 이전에는 존재할 수 없었던 로그인 없는 도구들을 가능하게 하고 있거든요.

Squoosh vs. 다른 도구: 어떤 것을 선택해야 할까요

다음 상황에서는 Squoosh가 맞는 선택이에요:

  • 어디에도 업로드하고 싶지 않은 사진이나 그래픽 작업을 할 때
  • 소프트웨어 설치 없이 AVIF나 JPEG XL 인코딩이 필요할 때
  • 다운로드하기 전에 품질/크기 트레이드오프를 시각적으로 확인하고 싶을 때
  • 파일에서 가능한 모든 바이트를 줄여야 할 때

일괄 처리에는 Squoosh CLI가 답이에요. 이미지 이상의 형식 변환(문서, 음악, 동영상)에는 Convertio가 더 넓은 범위를 커버해요. SVG의 경우, SVGOMG가 브라우저에서 로컬로 실행되고 Squoosh보다 SVG 최적화를 더 잘 처리해요.

Squoosh가 유일하게 승리하는 시나리오: 고품질 이미지 하나가 있고, 압축 품질이 중요하며, 파일이 내 컴퓨터를 벗어나지 않기를 바랄 때. 고객에게 전송하기 전의 제품 사진. 의료 이미지. 개인 사진. 이미지 형태의 법적 문서. 이런 경우에는 파일 크기를 줄이기 위해 제3자 서비스에 업로드하는 건 나쁜 선택이에요.

파일을 존중하는 도구

대부분의 로그인 없는 도구는 계정이 굳이 필요 없을 만큼 단순하기 때문에 “로그인 불필요”예요. Squoosh는 달라요 — 계정과 서버 인프라가 필요할 수 있을 만큼 기술적으로 정교하지만, 클라이언트 측에서 실행되도록 의도적으로 설계됐어요. 이건 제약이 아니라 설계 선택이에요.

웹은 백엔드 서버에 의존하지 않고도 실제 소프트웨어를 실행할 수 있는 능력을 점점 키워가고 있어요. Squoosh는 2018년부터 이를 증명해 왔어요. 코덱은 계속 개선되고, AVIF에 대한 브라우저 지원은 계속 확산되며, “서버에 업로드”와 “로컬에서 실행” 사이의 간격은 계속 좁아지고 있어요.

아직 사용해 본 적 없다면, squoosh.app은 회원가입 없이 즉시 열려요. 이미지를 드롭하고, 결과를 비교하고, 내보내면 끝이에요. 이런 방식으로 작동하는 도구들 — 계정 없이, 업로드 없이, 추적 없이 — 을 더 찾고 있다면, nologin.tools 디렉토리에서 모든 카테고리에 걸쳐 수백 개의 도구를 찾아볼 수 있어요.