Batch Timestamp Converter

Paste a list of Unix timestamps or dates and convert them all at once. Download the results as CSV.

Input

one value per line
One value per line.

Results

The batch timestamp converter processes many Unix timestamps or dates at once instead of one at a time. Paste a list (one value per line), choose the direction, and get a full conversion table you can copy or download as CSV. Useful for cleaning a log file, preparing data for import, or auditing a column of timestamps that need to be human-readable.

How the Batch Converter Works

Pick a conversion direction, paste your list into the textarea (one value per line), and click Convert. The tool parses each line independently, converts it, and renders a results table with the original value, the converted output, and a per-row copy button. Empty lines are skipped, and any malformed value is flagged in the result so you can spot bad input.

If you only need to convert a single timestamp, the main timestamp converter on the homepage is faster. To shift one date by a duration instead of converting it, use the date add/subtract calculator.

When to Use a Batch Converter

One-by-one conversion is fine for an occasional debug timestamp, but real datasets routinely contain thousands of timestamps that need conversion at the same time:

For data that arrives as ISO 8601 strings or other formats, the strftime builder helps construct a matching parse string. To inspect Snowflake, UUID, or other ID formats that embed a timestamp, use the dedicated Snowflake decoder, UUID decoder, or ULID decoder instead - they extract the embedded date plus the other ID components.

Input Format Detection

The converter detects the format of each line automatically based on its content. A 10-digit number is parsed as Unix seconds. A 13-digit number is parsed as Unix milliseconds. A line with dashes or slashes is parsed as a calendar date in YYYY-MM-DD, MM/DD/YYYY, or ISO 8601 format. Whitespace at the start or end of each line is trimmed before parsing, so messy paste output usually works without manual cleanup.

If a line cannot be parsed, the result column shows "Invalid" or an error indicator instead of a date. The original input is preserved so you can locate the bad row in your source file. To convert dates between two specific timezones, the timezone converter handles per-moment conversion with timezone awareness.

Exporting Results

The Copy All Results button puts the entire table on the clipboard as tab-separated values, which paste cleanly into Excel, Google Sheets, or any text editor. The Download CSV button saves a comma-separated file with two columns (input, result) ready to import into a spreadsheet or a database. CSV is the format virtually every analysis tool reads natively, so the same file works in Excel, LibreOffice, pandas, R, and any SQL client.

Frequently Asked Questions

The converter handles several thousand lines without slowing down. Conversion happens entirely in your browser, so there is no server-side limit and your data never leaves your machine. For very large datasets (tens of thousands of rows), browser performance starts to lag during render, so split the input into smaller batches.

For timestamp-to-date mode: 10-digit Unix seconds (like 1700000000) or 13-digit Unix milliseconds (like 1700000000000). For date-to-timestamp mode: YYYY-MM-DD, YYYY-MM-DD HH:MM:SS, or ISO 8601 strings like 2026-05-28T14:30:00Z. Whitespace around each line is trimmed before parsing.

No, the mode switch applies to the whole batch. Use Timestamps to Dates when every line is a Unix timestamp, or Dates to Timestamps when every line is a calendar date. If you have mixed input, separate it into two batches and run the converter twice.

Yes. 13-digit values are interpreted as Unix milliseconds (the format JavaScript's Date.now() returns), and 10-digit values are interpreted as Unix seconds (the standard server-side format). The converter picks the right interpretation automatically based on the digit count, so you can mix both formats in the same batch as long as they all parse as Unix timestamps.

Converted dates are shown in your browser's local timezone, which usually matches your operating system. Unix timestamps themselves are timezone-neutral (they represent a single moment in UTC), but the readable date is rendered in local time so it matches what you would see on your own clock. To preview the same moment in a specific timezone, use the timezone converter.

No. The conversion runs entirely in your browser using local JavaScript. No timestamps, dates, or any other input ever leaves your machine. This makes the batch converter safe for sensitive log data, personal information, or any input you would not want to send to a third-party service.

The result column shows Invalid for that row instead of a converted value. The original input is preserved in the Input column so you can locate the problem in your source data. Common causes: extra characters from a copy-paste, an unsupported date format, or a value that is not actually a timestamp.

Click Copy All Results to put the table on the clipboard as tab-separated text. Switch to your spreadsheet, click the target cell, and paste - Excel, Google Sheets, and LibreOffice all split tab-separated values into separate columns automatically. For a permanent file, use Download CSV instead.

Yes for ISO 8601 strings that include a timezone offset like 2026-05-28T14:30:00+02:00 or with a Z suffix for UTC. The converter respects the offset and produces the correct Unix timestamp. Dates without a timezone are assumed to be in your local timezone, which matches the behavior of most date libraries.

The batch converter is the fastest option for one-off jobs: paste, click, download. A script is better when the same conversion needs to run every day or every hour, when the input is huge (tens of thousands of rows), or when conversion is part of a larger automated pipeline. For ad-hoc cleanup of logs, exports, or spreadsheets, this tool removes the need to write any code.