전체 도구 ↗
이미지 → 코드

이미지 → Base64

이미지를 코드에 그대로 붙여넣는 data URI(Base64)로 — 파일 첨부 없이 한 줄에

서버 전송 0 · 브라우저 100% 처리
🖼️

이미지를 끌어다 놓거나 눌러서 선택하세요

또는 붙여넣기(Ctrl+V) · 기기 안에서만 변환, 업로드 안 함

PNGJPGGIFWebPSVG
📋 캡처하고 바로 Ctrl+V 붙여넣기 지원
변환한 이미지 미리보기
변환하면
여기에 미리보기
원본 → Base64 크기 변화
원본 대비 크기 변화가 여기 표시됩니다
큰 이미지는 오히려 무거워져요 → 용량 줄이기
data URI
이 이미지가 필요한 다른 작업 · 용량 줄이기 · HEIC→JPG · WEBP로 변환
광고

이 도구는 이렇게 씁니다

작은 아이콘이나 이미지를 별도 파일 없이 HTML·CSS 코드 안에 그대로 넣을 수 있는 data URI(Base64) 문자열로 바꿔 줍니다. 파일은 서버로 전송되지 않고 브라우저 안에서만 변환됩니다.

광고

관련 도구

이미지를 Base64 문자열로 변환해 HTML이나 CSS 파일 안에 직접 이미지를 삽입할 수 있게 해주는 도구입니다. 외부 이미지 파일 없이 단일 HTML 파일 하나로 모든 이미지를 포함시켜야 할 때, 또는 CSS의 background-image를 data URI로 처리해 HTTP 요청을 줄이고 싶을 때 필요합니다. 별도 라이브러리 설치 없이 브라우저에서 바로 변환되며 파일이 서버로 전송되지 않습니다.

사용 방법

변환하려는 이미지 파일을 클릭해서 선택하거나 드래그 앤 드롭으로 올리거나, 캡처한 이미지를 붙여넣기(Ctrl+V)하면 별도의 변환 버튼 없이 그 즉시 'data:image/png;base64,...' 형식의 문자열이 자동으로 생성됩니다. 결과 텍스트 박스에서 전체 선택 후 복사해 HTML의 img 태그 src 속성, CSS의 background-image url() 안, 또는 JavaScript 코드에 붙여넣으면 됩니다. 매우 큰 이미지(수 MB 이상)는 결과 문자열 길이가 수십만 자에 달하므로, 아이콘이나 소형 이미지를 변환할 때 가장 효율적입니다.

이럴 때 유용해요

이메일 HTML 템플릿을 만들 때 외부 이미지 서버 없이 로고나 버튼 이미지를 삽입해야 하는 경우에 자주 쓰입니다. 오프라인 환경에서 열람해야 하는 단일 파일 형태의 보고서나 프레젠테이션 HTML을 제작할 때도 유용합니다. 또한 웹 개발에서 작은 아이콘을 CSS 스프라이트 대신 data URI로 처리하면 별도 이미지 파일 관리 없이 스타일시트 한 곳에서 모든 이미지를 통합 관리할 수 있습니다. Webpack 같은 번들러 없이 작업하는 소규모 프로젝트에서 특히 편리합니다.

알아두면 좋은 점

Base64 인코딩은 원본 바이너리 대비 파일 크기가 약 33% 증가합니다. 따라서 수십 KB를 넘는 이미지를 여러 개 삽입하면 HTML 파일 전체 크기가 크게 늘어나 로딩 속도에 불리합니다. PNG, JPG, GIF, SVG, WebP 모두 변환 가능하며, SVG는 별도로 Base64 없이 텍스트 그대로 인라인 삽입하는 방법도 있습니다. 변환 결과가 올바른지 확인하려면 브라우저 주소창에 생성된 data URI 전체를 붙여넣어 이미지가 표시되는지 테스트해 보면 됩니다.

자주 묻는 질문

변환한 Base64 문자열을 img 태그에 어떻게 쓰나요?
<img src="data:image/png;base64,AAAA..."> 형식으로 src 속성에 그대로 붙여넣으면 됩니다. PNG, JPG 등 이미지 형식에 맞게 MIME 타입(image/png, image/jpeg)이 자동으로 포함됩니다.
파일이 외부 서버로 전송되나요?
아닙니다. 변환은 브라우저 내 JavaScript로만 처리되며 이미지 데이터는 서버로 전송되지 않습니다. 민감한 이미지도 안전하게 변환할 수 있습니다.
변환 후 문자열 길이가 너무 긴데 괜찮나요?
Base64 문자열은 원본보다 약 33% 길어집니다. 100KB 이미지라면 결과 문자열은 약 136KB 수준입니다. HTML 파일 크기가 커지므로 큰 이미지는 외부 파일로 두는 것이 성능상 낫습니다.
SVG 파일도 변환할 수 있나요?
네, SVG도 Base64로 변환됩니다. 다만 SVG는 텍스트 기반이라 Base64 대신 URL 인코딩한 SVG를 data URI로 쓰는 방식이 더 가독성 좋고 파일도 더 작습니다.
변환된 data URI를 CSS background-image에 쓸 수 있나요?
네. background-image: url('data:image/png;base64,...'); 형식으로 사용합니다. 외부 이미지 URL 대신 data URI를 그대로 넣으면 됩니다.

개인정보처리방침

이미지 → Base64 인코더란

이미지 파일을 data:image/png;base64,iVBORw0KGgo... 형태의 data URI 문자열로 바꿔 줍니다. 이렇게 만든 문자열은 별도 이미지 파일 없이도 HTML의 <img src>나 CSS의 background-image: url(...)에 그대로 붙여 넣어 화면에 표시할 수 있습니다. 이 페이지는 업로드 없이 브라우저 안에서만 변환하므로, 선택한 이미지가 서버로 전송되지 않습니다.

사용법

이미지 파일을 선택하거나 영역에 끌어다 놓거나 붙여넣기(Ctrl+V)하면 즉시 변환됩니다. 결과는 data:로 시작하는 완성형 data URI 한 가지로, 결과 상자에 그대로 표시됩니다. 이 문자열을 그대로 <img src>나 CSS url()에 붙여 넣으면 됩니다. 복사 버튼으로 전체를 클립보드에 담아 HTML·CSS·JSON·마크다운 어디든 붙여 넣을 수 있습니다. PNG, JPG, GIF, WebP, SVG 등 브라우저가 읽는 형식이면 MIME 타입(image/png 등)을 자동으로 감지해 URI 앞부분에 넣습니다.

작동 원리와 용량 계산

Base64는 3바이트(24비트)를 4개의 문자로 나눠 표현합니다. 그래서 인코딩 후 문자열 길이는 원본보다 약 33% 커집니다. 예를 들어 3KB 아이콘은 문자열로 약 4KB가 됩니다. 끝에 붙는 =는 3의 배수를 맞추기 위한 패딩입니다. 원본 크기를 미리 가늠하려면 대략 원본바이트 × 4 ÷ 3로 계산하면 됩니다.

원본 이미지Base64 문자열(근사)
1 KB약 1.37 KB
10 KB약 13.7 KB
100 KB약 137 KB

이럴 때 씁니다

작은 아이콘·로고·1px 배경 패턴을 CSS에 인라인으로 넣어 HTTP 요청 수를 줄일 때, 외부 이미지 링크가 막히거나 CORS 문제가 있는 환경에서 이미지를 코드에 내장할 때, 단일 HTML 파일 하나로 이미지까지 포함해 배포·전달할 때, 또는 SVG 파비콘이나 이메일 서명용 작은 이미지를 문자열로 심을 때 유용합니다.

data URI는 브라우저가 별도로 캐시하지 않고 HTML·CSS와 함께 매번 내려받습니다. 따라서 큰 사진에 쓰면 파일이 무거워지고 오히려 느려집니다. 대체로 5~10KB 이하의 작은 이미지에만 쓰는 것이 좋습니다. SVG는 Base64 대신 URL 인코딩 방식이 더 짧아지는 경우가 많으니 상황에 맞게 선택하세요. 여러 곳에서 재사용하는 큰 이미지는 그냥 파일 링크로 두는 편이 캐시 측면에서 유리합니다.

자주 묻는 질문

Base64로 바꾸면 화질이 떨어지나요?

아니요. Base64는 압축이나 손실이 없는 문자 인코딩일 뿐이라 원본 픽셀 데이터가 그대로 보존됩니다. 다만 문자열 길이가 원본보다 약 33% 늘어납니다.

변환한 이미지가 서버에 올라가나요?

올라가지 않습니다. 이 도구는 브라우저의 FileReader로 파일을 읽어 그 자리에서 문자열로 바꾸므로, 이미지가 외부로 전송되지 않습니다.

왜 큰 이미지에는 권장하지 않나요?

data URI는 HTML·CSS 안에 그대로 박히기 때문에 브라우저가 개별 파일처럼 따로 캐시하지 못합니다. 큰 이미지는 문서 크기를 키우고 매번 다시 내려받게 되어 오히려 느려질 수 있습니다.

반대로 Base64를 이미지로 되돌릴 수 있나요?

가능합니다. data:image/...;base64,로 시작하는 문자열을 브라우저 주소창이나 <img> src에 넣으면 그대로 이미지로 렌더링됩니다. 별도 디코딩 도구로 파일로 저장할 수도 있습니다.