The small file utility you were missing

A CSV to fix, PDFs to merge, photos to shrink, JSON to convert: describe your problem, drop your files, get the result. No account, no upload.

  • 100% in your browser
  • Free, no account
  • Paid only when our servers do the work

Drop your files here or Browse

Or drop a file here to see the compatible tools

Most useful

Change CSV separator

Convert a semicolon CSV to comma (or tab, or back) without breaking quotes or accents.

CSV & Excel csv txt tsv xlsx … Local processing

Fix accents and encoding

Detects the encoding (Windows-1252, ISO-8859-1, UTF-8), converts to UTF-8 and repairs garbled text such as “é” instead of “é”.

CSV & Excel csv txt tsv json … Local processing

CSV to Excel (XLSX)

Converts a CSV into a clean Excel workbook: correct accents, leading zeros preserved, numbers detected, frozen header.

CSV & Excel csv txt tsv Local processing

Excel to CSV

Exports every sheet of an Excel or LibreOffice workbook to UTF-8 CSV, with the separator you choose.

CSV & Excel xlsx xlsm xls ods Local processing

Merge several CSV files

Concatenates several CSV files into one, aligning columns by name even when their order differs.

CSV & Excel csv txt tsv xlsx … Local processing

Remove duplicate rows from a CSV

Removes duplicate rows, on the whole row or on the columns you choose (email, id…), with a preview of what was removed.

CSV & Excel csv txt tsv xlsx … Local processing

Clean a CSV

Removes empty rows, surrounding spaces, empty columns and non-breaking spaces; normalises headers.

CSV & Excel csv txt tsv xlsx … Local processing

Format or minify JSON

Pretty-prints JSON (2 spaces, 4, tabs), minifies it to one line, sorts keys and reports syntax errors.

JSON, YAML, XML json txt Local processing

JSON to CSV

Flattens an array of JSON objects (even nested) into a CSV that opens in Excel. Also accepts YAML and NDJSON.

JSON, YAML, XML json yaml yml ndjson … Local processing

Compare two JSON files

Compares two JSON documents structurally (not line by line) and lists added, removed and changed keys, with a JSON Patch.

JSON, YAML, XML json yaml yml txt Local processing

Merge PDF files

Combines several PDFs into one, in the order you drop them, without uploading your documents anywhere.

PDF pdf Local processing

Extract pages from a PDF

Keeps only the pages you list (1,4,7-12, odd, last) in a new PDF, or one page per file.

PDF pdf Local processing

Remove PDF metadata

Erases author, title, producer, dates and XMP metadata from a PDF before sharing it, or replaces them with your values.

PDF pdf Local processing

Images to PDF

Puts photos or scans (JPEG, PNG, WebP…) into an A4, Letter or image-sized PDF, one image per page.

PDF jpg jpeg png webp … Local processing

Convert images (JPEG, PNG, WebP)

Converts a batch of images between JPEG, PNG and WebP at the quality you choose, right in the browser.

Images jpg jpeg png webp … Local processing

Resize images in batch

Shrinks a batch of images to a maximum width, height or side, without distortion, with before/after preview.

Images jpg jpeg png webp … Local processing

Compress images

Reduces the file size of photos while keeping their dimensions, with adjustable quality or a target size.

Images jpg jpeg png webp … Local processing

Remove EXIF and GPS metadata

Strips EXIF, GPS location, XMP, IPTC and thumbnails from photos without recompressing them: quality stays identical.

Images jpg jpeg png webp Local processing

Convert subtitles SRT, VTT, ASS

Converts subtitle files between SRT, WebVTT and ASS/SSA while keeping italics and line breaks.

Subtitles srt vtt ass ssa … Local processing

Shift subtitles

Moves every subtitle earlier or later by N milliseconds, or fixes drift (23.976 ↔ 25 fps) with a speed factor.

Subtitles srt vtt ass ssa … Local processing

Create a ZIP

Compresses files into a ZIP archive in your browser, with an optional manifest (names, sizes, SHA-256).

Archives & files Local processing

Extract a ZIP

Unpacks a ZIP archive (or DOCX, XLSX, EPUB, JAR…) and recovers every file or only some types, with protection against malicious archives.

Archives & files zip docx xlsx pptx … Local processing

Bulk rename files

Normalises file names (no accents or spaces, lower-case), adds a prefix, suffix or numbering, replaces text.

Archives & files Local processing

Extract attachments from e-mails (EML)

Recovers every attachment from .eml files (Thunderbird, Outlook, Gmail “Download message”) without ever opening them.

E-mails, contacts, calendars eml msg txt mht … Local processing

vCard contacts (VCF) to CSV

Converts a vCard address book (iPhone, Android, Gmail, Outlook) into a CSV that opens in Excel: names, e-mails, phones, addresses.

E-mails, contacts, calendars vcf vcard txt Local processing

Compare two text files

Shows added and removed lines between two versions of a text, code, config or CSV file (unified diff).

Text Local processing

All tools

62 tools, all free and local

CSV & Excel 14 tools

Separators, accents, duplicates, merge, Excel.

JSON, YAML, XML 15 tools

Format, convert, compare, validate.

Why nothing leaves your browser

Bakefile ships its processing engine (written in Rust, compiled to WebAssembly) inside the page itself. Your files are read by your browser, transformed on your machine, and the result is offered for download. No server ever sees them: unplug the network once the page is loaded and it still works. Only the paid processing on our servers, which you trigger yourself, sends your files.