Neatbo.

Extract EML attachments

Recover original MIME attachment bytes from up to 500 local EML files with a complete filename map.

Browser-local processingInputBatch EMLOutputAttachment ZIP / mapsUp to 30 MiB per file · File limit: 500
  1. 1Add input
  2. 2Review and run
  3. 3Get your result

Tool input and files are processed in this browser without being uploaded.

Your input

Inputs are kept temporarily in this tab when switching tools. Refreshing or closing clears them; large results may need to be regenerated.

⌘ / Ctrl + Enter to run

or drag and drop them here

Files stay on this device. Your originals stay unchanged.

.eml

Up to 30 MiB per file · File limit: 500

    Preparing the tool…

    Before you start

    Choose a batch of saved email files and recover their attachments without opening an inbox. Nested MIME, inline files and supported encodings are parsed locally. A ZIP and reports map every recovered file to its source email and MIME part.

    How to use this tool

    1. Choose your saved .eml files as one bounded batch.
    2. Extract and review mail number, MIME part, original filename and safe ZIP filename.
    3. Download the ZIP containing all attachments and the complete mapping reports. Keep the original emails.

    Supported inputs and limits

    Up to 500 EML files and 30 MiB total input; up to 1,000 attachments, 10 MiB per decoded attachment and 30 MiB total decoded payload. MIME nesting is limited to 20 levels and 5,000 total parts.

    Supports Base64, quoted-printable, binary, 7bit and 8bit payloads; filename/name parameters, RFC2231 continuations and UTF-8/ASCII/ISO-8859-1 encoded filenames. TNEF and attached message/rfc822 recursion are unsupported. A malformed selected attachment fails the whole batch: no incomplete success is shown. Email HTML is never rendered or executed; no mailbox connection occurs.

    Worked example

    Example input

    One saved EML with a 5-byte binary attachment, an empty attachment and a nested 4-byte inline attachment.
    Example options
    {}

    Example output

    1 email, 3 attachments, 9 decoded bytes; attachment ZIP plus JSON and CSV maps.

    When something does not work

    Use saved EML with intact MIME headers and boundaries. Check the reported email number for bad Base64, quoted-printable or unsupported structures. Reduce the batch when byte or part budgets are exceeded.

    Frequently asked questions

    Can it process hundreds of saved emails?

    Yes. A batch of 500 small EML files is independently tested. The total input and decoded attachment budgets still apply.

    Are the attachment bytes changed?

    Supported transfer encodings are decoded to their stored payload bytes. Filenames are made safe and uniquely prefixed by mail and MIME part; the report records both names.

    What happens to one corrupt attachment?

    The entire batch fails with its email number. Fix or remove the failing email and rerun. A successful report means all selected supported parts were processed.

    Documentation & further reading

    Related tools