🔤

Convertidor de Imagen a Base64

Suelta cualquier JPG, PNG, WebP, GIF, SVG o BMP y obtén un Data URL Base64 listo para copiar — más fragmentos preformateados de CSS, HTML, Markdown y JSON. 100% en tu navegador.

Suelta una imagen aquí o haz clic para examinar

Cualquier formato de imagen. Hasta 20 archivos a la vez.

O pulsa Ctrl/Cmd+V para pegar del portapapeles

7 formatos de salida

Raw, Data URI, HTML <img>, CSS background, Markdown, JSON y JS string — todos desde una sola subida.

📋

Pegar del portapapeles

Pulsa Ctrl/Cmd+V para codificar una captura al instante, sin guardar archivo.

🛡️

Cero subidas

FileReader API procesa todo localmente. Tus imágenes nunca salen de tu dispositivo.

♾️

Sin límite de tamaño

Limitado solo por la RAM. Probado con archivos de 100 MB+ en un portátil de 16 GB.

¿Qué es la codificación Base64 de imagen?

La codificación Base64 de imagen convierte los bytes binarios de un archivo de imagen en una cadena ASCII usando 64 caracteres imprimibles. El resultado puede incrustarse directamente en HTML, CSS, JavaScript, JSON o Markdown donde se requiera una representación textual, eliminando la necesidad de un archivo de imagen separado o una solicitud HTTP.

Lo más común es envolver el contenido codificado en un Data URI con el formato data:image/png;base64,<payload>. Esto está definido por RFC 2397, mientras que el alfabeto Base64 se especifica en RFC 4648.

Un dato clave que los desarrolladores deben conocer: las imágenes codificadas en Base64 son aproximadamente un 33% más grandes que el archivo binario original. Esto es matemáticamente inherente — cada 3 bytes de binario se convierten en 4 caracteres ASCII. Si esa sobrecarga importa depende totalmente del contexto, que cubrimos abajo.

Cuándo usar Base64 (y cuándo NO)

La mayoría de los tutoriales online simplifica el inlining de Base64 como "siempre bueno" o "siempre malo". La verdad es contextual. Esta es la matriz de decisión que usamos en código de producción:

Escenario¿Usar Base64?Razón
Firma de correo con logo embebido✅ ObligatorioMuchos clientes bloquean referencias externas a imágenes
Icono < 2 KB en CSS crítico✅ RecomendadoAhorra un round-trip; ganancia > 33% de coste de tamaño
Demo HTML / reporte de bug en un archivo✅ RecomendadoAutocontenido, sin dependencias externas
Recursos de splash de Service Worker / PWA✅ A vecesEvita carrera de recursos durante la instalación del SW
Fixtures en tests unitarios✅ RecomendadoTests autocontenidos y legibles
Imagen > 10 KB en CSS o HTML❌ Anti-patrónBloquea el render path crítico; no cacheable por separado
Cualquier imagen en entorno HTTP/2❌ Normalmente maloEl multiplexing de HTTP/2 ya elimina la sobrecarga de la solicitud
SVG usado en background CSS❌ Anti-patrónURL-encoded SVG es más pequeño y manipulable por CSS
El inlining de Base64 cambia un 33% de crecimiento de tamaño por una solicitud HTTP menos. Tras la generalización de HTTP/2 en 2015, este intercambio rara vez compensa por encima de ~2 KB.

Cómo convertir imagen a Base64 en 4 pasos

Nuestro convertidor de imagen a Base64 gratuito se ejecuta totalmente en tu navegador mediante la FileReader API. Ningún archivo se sube — verifícalo tú mismo en la pestaña Red del navegador mientras la herramienta funciona.

1

Suelta o pega la imagen

Arrastra y suelta, haz clic para examinar, o pulsa Ctrl/⌘+V para pegar una captura desde el portapapeles.

2

Elige el formato de salida

Cambia entre Raw, Data URI, HTML, CSS, Markdown, JSON o cadena JavaScript.

3

Copia o descarga

Copia al portapapeles con un clic, o descarga el texto codificado como archivo .txt.

4

Verifica en tu código

Pégalo en tu HTML, CSS o componente React. La Data URL se renderiza nativamente en cualquier navegador moderno.

7 formas de usar la salida Base64

El mismo payload Base64 sirve a siete casos de uso de producción distintos. Cada pestaña en nuestra herramienta produce un fragmento listo para copiar y pegar para el formato que necesites.

Firma de correo

Embebe tu logo para que se renderice en Outlook, Gmail y Apple Mail sin carga externa.

<img src="data:image/png;base64,iVBOR..." alt="Logo" />

Background CSS

Inlinea iconos < 2 KB para eliminar un round-trip HTTP en el CSS crítico.

background: url("data:image/svg+xml;base64,PHN2..")

Vista previa en React

Muestra una vista previa antes de enviar el archivo al servidor.

<img src={`data:image/jpeg;base64,${b64}`} />

Reporte bug en Markdown

Markdown autocontenido para issues de GitHub — sin enlaces de imagen rotos con el tiempo.

![Screenshot](data:image/png;base64,iVBOR...)

API JSON

Transmite imágenes en JSON estructurado cuando el schema solo permite campos de texto.

{ "image": "data:image/png;base64,..." }

Constante JavaScript

Empaqueta recursos directamente en tu build para fetch sin runtime.

const logo = "data:image/png;base64,...";

TinyImagePro vs otras herramientas Image-to-Base64

Construimos esta herramienta tras usar seis convertidores Base64 y descubrir que cada uno transigía en algo — límites de tamaño, faltan formatos de salida, subida al servidor o cero documentación. Así se comparan las alternativas:

HerramientaLado clienteLímite archivoFormatos salidaFAQ real
TinyImageProLimitado por RAM7✅ 8 preguntas
base64.guru❌ sube50 MB10
base64-image.de1 MB2Parcial
browserlingNo especificado1
jam.dev4 MB3
codebeautifyNo especificado1

Para contenido sensible (imágenes médicas, mockups internos de producto, borradores de logo), la conversión client-side es la única opción. El límite de 50 MB de base64.guru es impresionante pero irrelevante si no puedes subir el archivo en primer lugar.

Rendimiento y mejores prácticas

La cifra de "33% de sobrecarga Base64" engaña a más desarrolladores que cualquier otro número de web-perf. Lo que realmente importa para la carga de página es el tamaño comprimido tras gzip o brotli — y las cadenas Base64 se comprimen muy diferente que el binario.

RecursoOriginalBase64SobrecargaTras gzip
Icono PNG (1 KB)1.0 KB1.4 KB+40%+5%
PNG (10 KB)10 KB13.4 KB+34%+12%
Foto JPG (50 KB)50 KB66.8 KB+34%+30%
SVG (icono pequeño)0.5 KB0.7 KB+40%URL-encoded SVG: −10%
La compresión gzip reduce la penalización de tamaño Base64 significativamente. Un PNG de 10 KB es un 34% más grande como Base64 binario, pero solo un 12% más grande tras gzip — haciendo que el inlining Base64 para activos pequeños sea menos costoso de lo que parece.

5 mejores prácticas

Inlinea activos < 2 KB. Por encima de este tamaño, el coste de bundle-bloat e invalidación de caché supera la solicitud ahorrada.

Nunca inlines imágenes LCP (Largest Contentful Paint). Bloquean el render crítico y evitan que el navegador las priorice.

Para SVG, usa URL-encoded SVG, no Base64. URL-encoded SVG es más pequeño y manipulable por CSS (currentColor, animaciones).

Comprime tu imagen primero con nuestras herramientas PNG o JPEG — Base64 hereda el tamaño de lo que codifiques.

Añade una Content-Security-Policy que permita data: en img-src y style-src si sirves activos Base64 cross-origin.

Preguntas frecuentes sobre Image to Base64

¿Mis imágenes se suben a vuestros servidores? No. TinyImagePro lee cada archivo con la FileReader API del navegador y lo procesa localmente. Puedes desconectarte de internet tras cargar la página y la conversión seguirá funcionando. Verifícalo en la pestaña Red de tu navegador.

¿Por qué la cadena Base64 es ~33% más grande que la original? Base64 representa cada 3 bytes binarios como 4 caracteres ASCII — un 33,3% de sobrecarga matemática antes de saltos de línea y el prefijo data:image/...;base64,. Tras gzip, la penalización real cae al 5–15% para activos pequeños.

¿Puedo usarlo para SVG? Sí, pero para SVG específicamente deberías considerar URL-encoded SVG en su lugar — es más pequeño y estilizable con CSS. Soportamos SVG como entrada para que experimentes, pero nuestro convertidor PNG a SVG es una mejor entrada para flujos de vectorización.

¿Cómo decodifico Base64 de vuelta a imagen? Pega la Data URL en la barra de direcciones de tu navegador — los navegadores modernos renderizan data:image/... nativamente. Programáticamente, decodifica con atob() en JavaScript o base64.b64decode() en Python. Una herramienta dedicada Base64 a imagen está en nuestra hoja de ruta.

PNG to SVG converterHEIC to JPEG converter

Preguntas frecuentes

Sí — 100% gratis, sin registro, sin marca de agua, sin límites de uso. La conversión se ejecuta totalmente en tu navegador con la API FileReader.

No. Los archivos se leen localmente con la API FileReader del navegador. Puedes desconectarte de internet tras cargar la página y la conversión seguirá funcionando.

No hay límite estricto. Solo te limita la RAM del dispositivo. Hemos probado archivos PNG de hasta 100 MB en un portátil de 16 GB.

base64.guru ofrece más formatos (10 vs nuestros 7) pero sube los archivos a su servidor. base64-image.de funciona en el cliente pero limita a 1 MB. Combinamos privacidad client-side + sin límite + 7 formatos de salida.

Base64 representa cada 3 bytes binarios como 4 caracteres ASCII — un overhead matemático del 33,3%. Tras compresión gzip en tránsito, la penalización real cae al 5-15% para activos pequeños.

Evita Base64 para imágenes mayores de ~2 KB en la ruta crítica de renderizado, imágenes que quieras que el navegador cachee de forma independiente, y SVG (donde URL-encoded SVG es más pequeño y manipulable por CSS).

JPEG, PNG, WebP, GIF, BMP, ICO y SVG funcionan directamente. HEIC requiere conversión previa — usa nuestro convertidor HEIC a JPEG.

Pega el Data URL en la barra de direcciones de tu navegador — los navegadores modernos renderizan data:image/... nativamente. Programáticamente, usa atob() en JavaScript o base64.b64decode() en Python.

Convertidor de Imagen a Base64 — Gratis, en el Navegador | TinyImagePro