CSV to Base64
Encode CSV files to Base64 or data URIs and decode them back.
CSV to Base64 Encoder for Data URIs and APIs
This tool encodes comma-separated values to Base64 and decodes Base64 back into CSV. It's aimed at developers and analysts who need to move spreadsheet exports through channels that expect a single safe string: data URI download links, JSON APIs, email attachments, and automation platforms.
Build a "Download CSV" link in pure HTML
Turn on Output as data URI and the tool produces a string like data:text/csv;base64,b3JkZXJfaWQsZGF0ZS4uLg==. Put it in an anchor tag with a download attribute:
<a href="data:text/csv;base64,..." download="orders.csv">Export orders</a>
Clicking the link saves a real .csv file with no backend and no Blob code. This is a neat trick for static dashboards, generated HTML reports, and email-free prototypes. Keep in mind that browsers limit very long URLs, so for multi-megabyte exports a Blob URL is still the better choice.
Sending CSV through APIs
Many REST and SOAP services accept file uploads as a Base64 field inside JSON, for example {"fileName": "orders.csv", "content": "b3JkZXJf..."}. Payment reconciliation files, bulk user imports, marketplace product feeds, and accounting integrations commonly work this way. Paste your CSV here, copy the Base64 into the request body, and decode responses the same way when an API returns a report as Base64.
What stays intact
Base64 encodes bytes, not rows, so everything is preserved: header row, quoted fields such as "Yılmaz, Ayşe", escaped quotes (""), Windows CRLF line endings, and non-English characters encoded as UTF-8. Nothing is reordered or trimmed.
More options
You can open a .csv file directly, switch to URL-safe Base64, remove padding, or wrap lines at 76 characters for MIME email bodies. If you need to quote individual values rather than encode the whole file, use CSV Escape / Unescape. Working with tab-separated data copied from a spreadsheet? Try TSV to Base64.
Frequently Asked Questions
How do I create a CSV download link without a server?
Enable 'Output as data URI' and use the result as the href of a link with a download attribute: <a href="data:text/csv;base64,..." download="report.csv">Download</a>. The browser saves the CSV directly from the page, which is ideal for static sites and HTML reports.
Why does Excel show broken characters when I open the decoded CSV?
The data is UTF-8, but older Excel versions assume a local code page for CSV files without a byte order mark. Import the file via Data > From Text/CSV and choose UTF-8, or add a BOM (\uFEFF) at the start of the CSV before encoding it.
Do quoted fields and commas inside values survive encoding?
Yes. Base64 works on the raw bytes, so quotes, doubled quotes, embedded commas, and line breaks inside quoted fields are preserved exactly. The CSV structure is neither parsed nor changed.