99tools

Date & Time

Unix timestamps are unreadable and timezones are worse. Convert an epoch value to a real date in the zone you care about, go back the other way, and check what a stored timestamp means before you write a migration around it.

Almost every bug in this area comes from one of three things: a value in milliseconds compared against one in seconds, a date string stored with no offset so nobody can later say which zone it meant, or a daylight-saving transition that made a scheduled time either not exist or happen twice. A timestamp is the right thing to store precisely because it carries no timezone — it is a single instant, and the zone is a display choice.

Durations are the other half of the problem, and they arrive in as many shapes as dates do: 2h30m from a config file, PT2H30M from an API, a bare number of seconds from a log. Converting between those, and totalling a column of them, is its own job.

The everyday version is clock arithmetic: adding up hours and minutes that will not add like ordinary numbers, working out what time it will be seven and a half hours after a 9:30 PM start, or totalling a week’s timesheet — breaks off, night shifts across midnight, overtime past 40 hours or 8 a day, and the pay it comes to.

Repeating events are harder still. An iCalendar RRULE packs a whole recurrence into one line, and the difference between the third Thursday and every third Thursday is a single token nobody reads correctly at a glance. Seeing the dates a rule actually produces settles it.

For the wall or a planner, a calendar prints too: a month to a page with room to write and lines for notes, every month of a year as one PDF, or the whole year on a sheet — Monday or Sunday first, A4 or Letter, with ISO week numbers if you want them.

And the week itself has an answer here: the ISO week of any date, the Monday and Sunday of any week, the dates of a quarter and of a fiscal quarter starting in April, July or October, and every week of a year listed, including the 53rd that some years have.

Unix Timestamp ConverterConvert a Unix timestamp to a date and back, in seconds, milliseconds or microseconds, in any time zone, with the unit detected for you.Duration ConverterConvert between 2h30m, ISO 8601 PT2H30M, seconds, milliseconds and plain English. Paste a list and every line converts on its own, with a total.Time & Hours CalculatorAdd and subtract hours and minutes, find what time it will be, count the hours between two times, and total a timesheet with breaks, overtime and pay.RRULE Builder & ExplainerBuild an iCalendar RRULE from controls, or paste one and read it in plain English — with the next twenty dates it actually produces.Time Zone Converter & World ClockSee the time in several zones at once, convert a meeting time across them with day shifts and daylight-saving notes, and find the hours everyone is at work.Date Difference & Duration CalculatorDays, weeks, months and years between two dates, working days, hours when times are given, and adding or subtracting from a date with month-end rules explained.Printable CalendarMake a printable calendar for any month or year: Monday or Sunday first, A4 or Letter, with notes lines, week numbers and your own title. Free PDF or PNG.Date Format ConverterPaste a date in almost any form and get it in every other: ISO 8601, RFC 2822, HTTP-date, Unix time, SQL, relative, or your own dayjs or strftime pattern.Timer, Stopwatch & CountdownA stopwatch with laps, a timer that beeps and can notify you, and a countdown to any date — exact even in a background tab, shareable as a link.ISO Week & QuarterWhat week is it? The ISO week number of any date, the dates of any week or quarter, fiscal quarters, and every week of the year with its Monday and Sunday.