dayjs alternatives
6 packages that do the same job as dayjs: date-fns, luxon, moment, @js-joda/core, date-fns-tz, @date-fns/tz. Figures below are from npm, GitHub and Bundlephobia.
| Package | Weekly downloads | 12-month change | Gzip | Dependencies | Last release | Module | Types | Runtimes |
|---|---|---|---|---|---|---|---|---|
| dayjs This package | 51.5m | +95% | - | 0 | 1 month ago | CommonJS | Bundled | Browser, Node.js |
| date-fns | 72.4m | +129% | - | 0 | 3 months ago | ESM + CommonJS | Bundled | Browser, Node.js |
| luxon | 27.4m | +99% | - | 0 | 1 year ago | ESM + CommonJS | None | Browser, Node.js |
| moment | 26.5m | +22% | - | 0 | 10 days ago | CommonJS | Bundled | Browser, Node.js |
| @js-joda/core | 3.1m | +91% | - | 0 | 2 months ago | ESM + CommonJS | Bundled | - |
| date-fns-tz | 7.5m | +77% | - | 0 | 1 year ago | ESM + CommonJS | Bundled | - |
| @date-fns/tz | 27m | +827% | - | 0 | 4 months ago | ESM + CommonJS | Bundled | - |
12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package (Bundlephobia). Runtimes are taken from each package's own documentation; "-" means not recorded.
Collection of standalone functions for working with native JavaScript Date objects.
- Functions operate on the native Date type and do not extend core objects.
- Pure functions that always return a new date instance.
- v4 added time zone support through the separate @date-fns/tz package, which provides TZDate.
- Written in TypeScript. Locales are imported individually.
Compared with dayjs
- 1.4x more weekly downloads (72.4m vs 51.5m)
- ESM + CommonJS vs CommonJS
- Last release 29 May 2026 vs 17 Aug 2026
- 1.3x fewer GitHub stars (36.6k vs 48.7k)
Date and time library with DateTime, Duration and Interval types, built on the Intl API.
- Uses the native Intl API for time zones and locales, so no locale or time zone data files are needed.
- Some Intl behaviour is browser-dependent, so Luxon's output can differ on older browsers.
- Written by one of the Moment.js maintainers and hosted under the moment GitHub organisation.
Compared with dayjs
- 1.9x fewer weekly downloads (27.4m vs 51.5m)
- ESM + CommonJS vs CommonJS
- No types vs bundled types
- Declares Node.js >=12 vs none declared
- Last release 5 Sept 2025 vs 17 Aug 2026
- 3.0x fewer GitHub stars (16.5k vs 48.7k)
Date library for parsing, validating, manipulating and formatting dates.
- The README says: "Moment.js is a legacy project, now in maintenance mode. New features are not being accepted."
- The project status page says the mutable API will not be redesigned.
- The same page says a 3.0 release is no longer ruled out, but only as a maintenance release with no schedule announced.
- Published as CommonJS.
Compared with dayjs
- 1.9x fewer weekly downloads (26.5m vs 51.5m)
- Declares Node.js * vs none declared
- Last release 15 Sept 2026 vs 17 Aug 2026
- About the same number of GitHub stars (47.9k vs 48.7k)
a date and time library for javascript
Compared with dayjs
- 17x fewer weekly downloads (3.1m vs 51.5m)
- ESM + CommonJS vs CommonJS
- Last release 10 Jul 2026 vs 17 Aug 2026
- 29x fewer GitHub stars (1.7k vs 48.7k)
Time zone support for date-fns v3 with the Intl API
Compared with dayjs
- 6.8x fewer weekly downloads (7.5m vs 51.5m)
- ESM + CommonJS vs CommonJS
- Last release 30 Sept 2024 vs 17 Aug 2026
- 41x fewer GitHub stars (1.2k vs 48.7k)
date-fns timezone utils
Compared with dayjs
- 1.9x fewer weekly downloads (27m vs 51.5m)
- ESM + CommonJS vs CommonJS
- Last release 21 May 2026 vs 17 Aug 2026
- 1.3x fewer GitHub stars (36.6k vs 48.7k)
Indexability: Indexed: 20 US searches/month for "dayjs alternatives".