Afbeelding naar Base64 converter
Zet afbeeldingen om naar Base64 data-URI's in je browser — PNG, JPG, GIF, WebP, SVG, ICO. Kopieer HTML-, CSS-, Markdown- en JSON-uitvoer. 100% privé, zonder uploaden.
Sleep hier een afbeelding, plak deze of klik om te bladeren
PNG · JPG · GIF · WebP · SVG · ICO · BMP — volledig geconverteerd in je browser
Wat is een Base64-afbeelding (data-URI)?
Een Base64-afbeelding is een afbeelding waarvan de binaire bytes opnieuw zijn geëncodeerd als een string van afdrukbare ASCII-tekens met behulp van het Base64-alfabet (A–Z, a–z, 0–9, + en /). Verpakt in het data:-URI-schema — data:image/png;base64,iVBORw0KGgo… — kan die string overal verschijnen waar een URL wordt verwacht: een HTML img src, een CSS background-image, een e-mailtekst of een veld binnen een JSON-payload. De browser decodeert deze ter plekke en toont de afbeelding zonder een apart netwerkverzoek. Daarom worden Base64-afbeeldingen soms "inline" of "ingesloten" afbeeldingen genoemd.
De encodering bestaat om een eenvoudige reden: veel systemen zijn gebouwd om tekst te dragen, geen willekeurige binaire data. HTML, JSON, e-mailheaders en URL's verwachten allemaal tekens, en ruwe afbeeldingsbytes zouden controlecodes en scheidingstekens bevatten die hen breken. Base64 zet elke 3 binaire bytes om naar 4 veilige teksttekens, wat garandeert dat de data het transport intact overleeft. De kosten zijn grootte: de tekstrepresentatie is ongeveer 33% groter dan de originele binaire data, en ze kan niet onafhankelijk van het document dat haar bevat worden gecachet.
Die afweging bepaalt wanneer Base64-afbeeldingen zinvol zijn. Voor een klein pictogram dat in één stylesheet wordt gebruikt, verwijdert inline zetten een retourverzoek en is de groottepenalty verwaarloosbaar — een duidelijke winst. Voor een hero-foto van 200 KB die op elke pagina wordt hergebruikt, blaast inline zetten elke pagina op, doorbreekt het de browsercache en kost het bij elke lading CPU om te decoderen — een duidelijk verlies. Het moderne, HTTP/2-tijdperk-advies is om alleen kleine, stabiele assets inline te zetten en al het andere als gewone gecachete bestanden te serveren. Deze tool brengt de exacte cijfers voor jouw afbeelding aan het licht plus een verkeerslichtaanbeveling, zodat de beslissing op data berust, niet op folklore.
De omgekeerde bewerking — een Base64-string terug omzetten naar een weergeefbare, downloadbare afbeelding — is even nuttig wanneer je een data-URI uit een stylesheet debugt, een API-respons inspecteert of een asset herstelt die in een configuratiebestand is ingesloten. Schakel naar het Base64 → Afbeelding-tabblad of open de aparte Base64 naar Afbeelding decoder.
<!-- The same 1×1 transparent PNG, four ways -->
<!-- HTML -->
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==" alt="pixel">
/* CSS */
.badge {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==");
}
<!-- Markdown -->

// JSON
{ "mime": "image/png", "data": "iVBORw0KGgo…" } Belangrijkste functies
Slepen, klikken of plakken
Drie invoerwegen: sleep een bestand, blader ernaartoe, of plak een afbeelding rechtstreeks vanaf het klembord met Ctrl+V — de snelste route voor screenshots. Wat je ook aanlevert wordt direct geëncodeerd, zonder upload.
Zes uitvoerformaten
Ruwe Base64, een volledige data-URI, een HTML -element, een CSS background-image-regel, een Markdown-afbeeldingslink en een JSON-object. Elk heeft zijn eigen kopieerknop en een downloadoptie, zodat het fragment klaar is voor precies de context waarin je het nodig hebt.
Live grootte- en toename-cijfers
De metadatabalk toont de originele bestandsgrootte, de geëncodeerde Base64-grootte en het precieze percentage toename voor jouw specifieke afbeelding — niet een algemene "ongeveer 33%". Je ziet de echte kosten van inline zetten vóór je je eraan vastlegt.
Adviesbadge voor inline zetten
Een verkeerslichtaanbeveling leest je bestandsgrootte en vertelt je of een data-URI een goed idee is: groen onder ~2 KB, oranje tot ~10 KB, rood erboven. Het legt de post-HTTP/2-consensus vast, zodat jij de drempels niet hoeft te onthouden.
Ingebouwde decoder
Het Base64 → Afbeelding-tabblad keert het proces om: plak een string of data-URI en krijg een live voorbeeld, de gedecodeerde afmetingen en het MIME-type, en een downloadknop die het originele bestand herbouwt. Het verdraagt ontbrekende prefixen en losse witruimte.
Alle gangbare formaten
PNG, JPG, GIF (animatie behouden), WebP, SVG, ICO en BMP — plus AVIF waar ondersteund. De ruwe bytes worden ongewijzigd geëncodeerd, dus transparantie, animatie en vectorschaalbaarheid overleven allemaal onaangetast.
Voorbeelden
PNG naar een data-URI (klaar voor CSS / HTML)
transparent-1x1.png (een PNG van 68 bytes)
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==
Sleep een PNG erin en het Data URI-tabblad geeft je een string die je direct in een HTML src of een CSS url() kunt plakken. De metadatabalk toont de originele grootte, de Base64-grootte en het exacte percentage toename.
Een SVG-pictogram inline in HTML zetten
icon.svg
<img src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0i…" alt="icon">
Schakel naar het HTML-tabblad voor een kant-en-klaar -element. Specifiek voor SVG is URL-encodering vaak kleiner dan Base64 — zie de FAQ over waarom SVG een speciaal geval is.
Markdown-afbeelding met een ingesloten JPG
photo.jpg (12 KB)

Het Markdown-tabblad produceert een zelfstandige afbeeldingslink — handig voor README-bestanden, GitHub-issues en notebooks waar je geen extern bestand kunt hosten. Bij 12 KB wordt de adviesbadge oranje: weeg het gemak af tegen de kosten in paginagewicht.
Een afbeelding naar Base64 converteren
- 1
Voeg je afbeelding toe
Sleep een afbeelding op de dropzone, klik om te bladeren, of plak vanaf het klembord met Ctrl+V / Cmd+V. PNG, JPG, GIF, WebP, SVG, ICO en BMP worden allemaal ondersteund en volledig in je browser geëncodeerd.
- 2
Kies een uitvoerformaat
Kies Data URI, ruwe Base64, HTML
, CSS-achtergrond, Markdown of JSON via de tabbladen. Controleer de metadatabalk voor de grootte-toename en de adviesbadge of inline zetten de moeite waard is.
- 3
Kopieer of download
Klik op Kopiëren om het fragment te pakken, of op Downloaden om het als bestand op te slaan. Om het proces om te keren, schakel je naar het Base64 → Afbeelding-tabblad, plak je een string en download je de gereconstrueerde afbeelding.
Veelgemaakte fouten
Ontbrekend of verkeerd MIME-type
Een data-URI moet het juiste mediatype aangeven, anders weigert de browser het weer te geven. Een PNG encoderen maar als image/jpeg labelen, of het type helemaal weglaten, produceert een gebroken afbeelding. Kopieer de Data URI- of HTML-uitvoer rechtstreeks uit deze tool om automatisch de juiste prefix te krijgen.
data:base64,iVBORw0KGgo… <!-- no MIME type — will not render -->
data:image/png;base64,iVBORw0KGgo… <!-- correct: image/png -->
Witruimte of regeleinden in de string
Sommige tools breken Base64 af op 76 tekens conform RFC 2045, en kopiëren-plakken kan losse spaties of nieuwe regels invoegen. In een HTML-attribuut of CSS url() kunnen die breaks de URI ongeldig maken. Verwijder witruimte vóór je de string gebruikt — de decoder van deze tool doet het automatisch, dus een retourtje door het Base64 → Afbeelding-tabblad maakt het schoon.
data:image/png;base64,iVBORw0KGgoAAAANS UhEUgAAAAEAAAABCAYAAAA… <!-- embedded newline breaks the attribute -->
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAA… <!-- single unbroken line -->
Afgekapte string (opvulling weggevallen)
Base64-strings eindigen op nul, één of twee =-opvultekens. Een gedeeltelijke kopie die de afsluitende = (of de laatste paar tekens) laat vallen, levert een niet-decodeerbare string en een gebroken afbeelding op. Als een geplakte string niet wordt weergegeven, bevestig dan dat je de volledige waarde hebt gekopieerd, inclusief eventuele afsluitende opvulling.
…WjR9awAAAABJRU5ErkJggg <!-- missing trailing == -->
…WjR9awAAAABJRU5ErkJggg== <!-- complete with padding -->
Een grote foto naar Base64 encoderen
Het encoderen van een foto van honderden KB produceert een enorme string die je HTML of CSS opblaast, niet op zichzelf kan worden gecachet en traag te decoderen is. De adviesbadge wordt precies voor dit geval rood. Serveer grote afbeeldingen als normale bestanden; reserveer Base64 voor kleine assets en comprimeer eerst.
/* 380 KB hero photo inlined into a global stylesheet */
.hero { background-image: url("data:image/jpeg;base64,/9j/…(½ MB of text)…"); } /* Serve it as a cached file instead */
.hero { background-image: url("/img/hero.jpg"); } Veelvoorkomende toepassingen
- Een logo of pictogram inline in CSS zetten
- Sleep een klein PNG- of SVG-pictogram, kopieer het CSS background-image-fragment en plak het in je stylesheet om een HTTP-verzoek weg te nemen voor een asset die zelden verandert. Houd het onder ~2 KB (let op de groene badge) zodat de stylesheet slank blijft.
- Afbeeldingen insluiten in HTML-e-mail
- E-mailclients blokkeren vaak externe afbeeldingen. Encodeer je logo als data-URI en plak het
-element in de sjabloon zodat het zonder serververzoek wordt weergegeven. Test in meerdere clients — houd ingesloten afbeeldingen klein, pictogrammen, geen foto's.
- Zelfstandige Markdown en README's
- Wanneer je een afbeelding niet kunt hosten — een GitHub-issue, een notebook, een offline document — sluit de Markdown-uitvoer de afbeelding rechtstreeks in het bestand in, zodat ze met de tekst meereist. Ideaal voor kleine diagrammen en badges.
- Afbeeldingen binnen JSON of API-payloads
- Moet je een miniatuur meesturen in een JSON-document of een configuratiebestand? De JSON-uitvoer geeft je een { mime, data }-object dat je direct kunt plaatsen, en de decoder herstelt de afbeelding aan de andere kant.
- Snel data-URI's debuggen
- Een mysterieuze data:-URI gevonden in een stylesheet of een API-respons? Plak deze in het Base64 → Afbeelding-tabblad om te zien wat het werkelijk is, de echte afmetingen te lezen en het als normaal bestand te downloaden voor nadere inspectie.
- Zelfstandige widgets en bookmarklets
- Bookmarklets en insluitbare widgets moeten op zichzelf staan zonder externe afhankelijkheden. Hun pictogrammen inline zetten als Base64 houdt alles in één bestand dat werkt ongeacht waar het wordt neergezet.
Technische details
- Hoe Base64-encodering werkt
- Base64 neemt de binaire stroom van de afbeelding telkens drie bytes (24 bits) tegelijk en splitst die in vier 6-bits-groepen, elk toegewezen aan één teken in het 64-symbolenalfabet. Wanneer de invoerlengte geen veelvoud van drie is, markeren één of twee =-opvultekens de rest. Deze 3-op-4-verhouding is waarom de geëncodeerde tekst ongeveer 33% groter is dan de bron. De tool berekent de gedecodeerde bytelengte direct uit de stringlengte en opvulling, zodat de grootte-cijfers die hij meldt exact zijn, niet geschat.
- MIME-detectie en magic bytes
- Wanneer je een bestand encodeert, komt het MIME-type uit het File-object van de browser. Wanneer je een ruwe Base64-string zonder data:-prefix decodeert, inspecteert de tool de eerste tekens, die overeenkomen met de magic bytes van de afbeelding: iVBORw0KGgo voor PNG, /9j/ voor JPEG, R0lGOD voor GIF, UklGR voor WebP, en PHN2Zy of PD94bWw voor SVG. Hierdoor kan de decoder een correcte data-URI reconstrueren en met de juiste bestandsextensie downloaden, zelfs wanneer de invoer slechts de kale payload is.
- Verwerking alleen lokaal
- Encodering gebruikt readAsDataURL van de FileReader-API, dat een data-URI teruggeeft die volledig in de browser is samengesteld. Decoderen voor downloaden gebruikt atob plus een Uint8Array om de binaire data te herbouwen, vervolgens een Blob en een object-URL — opnieuw zonder enig netwerk. Het resultaat is een tool die je offline kunt draaien en die je vertrouwelijke afbeeldingen kunt toevertrouwen, omdat de bytes de pagina nooit verlaten. Je kunt het gedrag zonder verzoeken verifiëren in de ontwikkelaarstools van je browser.
Aanbevolen werkwijzen
- Zet alleen kleine, stabiele assets inline
- De ideale zone voor Base64 zijn assets onder ~2 KB die zelden veranderen en op weinig pagina's verschijnen — pictogrammen, kleine logo's, UI-sprites. Boven ~10 KB wegen de groottepenalty en verloren caching zwaarder dan het bespaarde verzoek, zeker nu HTTP/2 extra verzoeken goedkoop maakt. Laat de adviesbadge je leiden en serveer foto's en grote graphics als gewone gecachete bestanden.
- Geef de voorkeur aan URL-encodering voor SVG
- SVG is tekst, dus Base64 blaast het op zonder winst. Wanneer je SVG inline zet in CSS of HTML, URL-encodeer de opmaak dan — het is meestal kleiner, blijft leesbaar voor mensen en comprimeert beter met gzip/brotli. Reserveer Base64 SVG voor pipelines die het specifiek vereisen. Onze URL-encoder/decoder verzorgt de percent-encodering.
- Stel altijd het juiste MIME-type in
- Een data-URI wordt alleen weergegeven als het MIME-type overeenkomt met de inhoud: image/png, image/jpeg, image/gif, image/webp, image/svg+xml. Een verkeerd of ontbrekend type is de nummer-één reden dat een ingesloten afbeelding niet wordt weergegeven. Wanneer je vanuit deze tool kopieert is het type voor je ingesteld; als je URI's met de hand samenstelt, controleer de prefix dan dubbel.
- Comprimeer vóór je encodeert
- Omdat Base64 ~33% bovenop de bestandsgrootte legt, loont het verkleinen van de bron dubbel. Haal afbeeldingen door onze Afbeelding comprimeren-tool — of exporteer op de juiste afmetingen — vóór het encoderen, zodat de resulterende data-URI zo klein mogelijk is. Een gecomprimeerde PNG van 4 KB verslaat een origineel van 40 KB, zowel als bestand als inline.
- Vertrouw nooit op Base64 voor privacy
- Base64 is triviaal omkeerbaar en biedt geen bescherming. Gebruik het niet om gevoelige afbeeldingsinhoud te verhullen — iedereen kan het direct decoderen, ook met het tabblad op deze pagina. Als inhoud beschermd moet worden, gebruik dan echte toegangscontrole en versleuteling op de server, en serveer de afbeelding via een geauthenticeerd endpoint.
Veelgestelde vragen
Wat doet deze Afbeelding naar Base64 converter?
Worden mijn afbeeldingen naar een server geüpload?
Hoeveel groter maakt Base64 een afbeelding?
Wanneer gebruik ik een Base64-afbeelding in plaats van een normaal bestand?
Wanneer gebruik ik Base64-afbeeldingen NIET?
Hoe gebruik ik de Base64-uitvoer in HTML en CSS?
Welke afbeeldingsformaten worden ondersteund?
Waarom is SVG een speciaal geval?
Is Base64 hetzelfde als versleuteling?
Kan ik een Base64-afbeelding insluiten in een e-mail?
Waarom wordt mijn Base64-afbeelding niet weergegeven?
Gerelateerde tools
Alle tools bekijken →Base64 decoderen en encoderen online
Encodering en formattering
Base64 decoderen en encoderen direct in je browser. Realtime conversie met volledige UTF-8- en emoji-ondersteuning. 100% privé — geen account nodig.
Base64 naar afbeelding converter
Encodering en formattering
Decodeer een Base64-string of data-URI terug naar een afbeelding in je browser. Bekijk voorbeeld, lees afmetingen & MIME, download als PNG, JPG, GIF, SVG. Geen upload.
CSV naar JSON omzetter
Encodering en formattering
Zet CSV om naar JSON in uw browser. RFC 4180, type-afleiding, headerregel, big-int veilig. 100% privé, geen upload.
JSON Diff (Vergelijken)
Encodering en formattering
Vergelijk twee JSON-bestanden direct in je browser. Zij-aan-zij markering, RFC 6902 JSON Patch-uitvoer, negeer storende velden zoals tijdstempels en ID's. 100% privé, geen upload.
Online JSON-formatter & validator
Encodering en formattering
Formatteer en valideer JSON direct in je browser. Gratis online tool met syntaxvalidatie, foutdetectie, minificeren en kopiëren met één klik. 100% privé.
JSON Schema-validator
Encodering en formattering
Valideer JSON tegen elk JSON Schema direct in je browser. Ondersteunt Draft 2020-12, 2019-09 en Draft-07 met padnauwkeurige foutmeldingen. 100% privé — geen upload, geen account, gratis.