Epoch Converter

Loading...
Loading...
CURRENT UNIX TIMESTAMP
Loading...
Today is Day
Loading...
Loading...
Loading...
Days Remaining
Loading...
Days in Year
Loading...
Current Year
Loading...
Year Progress

ISO Ordinal Date

Loading...
ISO-8601 ordinal date format (YYYY-DDD)

Current Date

Loading...
Full date in standard format

Year Completion

Loading...
Percentage of the year completed

Julian Day Number

Loading...
Days since January 1, 4713 BCE

About Day Numbers (Ordinal Dates)

Day numbers, also known as ordinal dates, represent the day of the year as a number between 1 and 365 (or 366 in leap years). January 1st is day 1, and each subsequent day increments this number. This format is useful in programming, scientific applications, and situations where you need to calculate time differences or perform date arithmetic. The ISO-8601 standard defines ordinal dates in the format YYYY-DDD, where YYYY is the year and DDD is the day number with leading zeros.

Day Number Formats

ISO-8601 Ordinal

Format: YYYY-DDD
Example: 2025-197
Standard: International ISO-8601

Simple Day Number

Format: DDD
Example: 197
Range: 1-365 (or 366)

Julian Day Number

Format: DDDDDDD
Example: 2460507
Origin: January 1, 4713 BCE

Modified Julian Day

Format: DDDDD
Example: 60507
Origin: November 17, 1858

How to Get Current Day Number in Programming

JavaScript
// Get day number (1-365/366) function getDayNumber(date = new Date()) { const start = new Date(date.getFullYear(), 0, 0); const diff = date - start; const oneDay = 1000 * 60 * 60 * 24; return Math.floor(diff / oneDay); } const dayNumber = getDayNumber(); console.log(`Today is day ${dayNumber}`); // Alternative method const now = new Date(); const start = new Date(now.getFullYear(), 0, 1); const dayOfYear = Math.ceil((now - start) / (1000 * 60 * 60 * 24)) + 1;
Python
import datetime # Get day number using timetuple day_number = datetime.datetime.now().timetuple().tm_yday print(f"Today is day {day_number}") # Alternative using strftime day_number = datetime.datetime.now().strftime("%j") print(f"Today is day {int(day_number)}") # For specific date specific_date = datetime.date(2025, 7, 16) day_number = specific_date.timetuple().tm_yday
PHP
// Get day number (note: 'z' format starts from 0) $dayNumber = date("z") + 1; echo "Today is day $dayNumber"; // For specific timestamp $dayNumber = date("z", strtotime("2025-07-16")) + 1; // Alternative using DateTime $date = new DateTime(); $dayNumber = $date->format("z") + 1; // Using 'j' format (1-based, but only for day of month) $dayOfYear = date("z") + 1;
Java
import java.time.LocalDate; // Get day number LocalDate today = LocalDate.now(); int dayOfYear = today.getDayOfYear(); System.out.println("Today is day " + dayOfYear); // For specific date LocalDate specificDate = LocalDate.of(2025, 7, 16); int dayNumber = specificDate.getDayOfYear(); // Using Calendar (legacy) Calendar cal = Calendar.getInstance(); int dayOfYear = cal.get(Calendar.DAY_OF_YEAR);
C#
using System; // Get day number DateTime today = DateTime.Now; int dayOfYear = today.DayOfYear; Console.WriteLine($"Today is day {dayOfYear}"); // For specific date DateTime specificDate = new DateTime(2025, 7, 16); int dayNumber = specificDate.DayOfYear; // Using DateOnly (.NET 6+) DateOnly date = DateOnly.FromDateTime(DateTime.Now); int dayOfYear = date.DayOfYear;
Go
package main import ( "fmt" "time" ) func main() { // Get day number now := time.Now() dayOfYear := now.YearDay() fmt.Printf("Today is day %d\n", dayOfYear) // For specific date specificDate := time.Date(2025, 7, 16, 0, 0, 0, 0, time.UTC) dayNumber := specificDate.YearDay() }
MySQL
-- Get day number SELECT DAYOFYEAR(NOW()) as day_number; -- For specific date SELECT DAYOFYEAR('2025-07-16') as day_number; -- Get day number with year SELECT YEAR(NOW()) as year, DAYOFYEAR(NOW()) as day_number; -- Format as ISO ordinal date SELECT CONCAT(YEAR(NOW()), '-', LPAD(DAYOFYEAR(NOW()), 3, '0')) as iso_ordinal;
PostgreSQL
-- Get day number SELECT EXTRACT(DOY FROM CURRENT_DATE) as day_number; -- Alternative using date_part SELECT date_part('doy', CURRENT_DATE) as day_number; -- Format as ISO ordinal date SELECT TO_CHAR(CURRENT_DATE, 'YYYY-DDD') as iso_ordinal; -- For specific date SELECT EXTRACT(DOY FROM DATE '2025-07-16') as day_number;
Ruby
# Get day number require 'date' day_number = Time.now.yday puts "Today is day #{day_number}" # Using Date class day_number = Date.today.yday # For specific date specific_date = Date.new(2025, 7, 16) day_number = specific_date.yday # Format as string puts Time.now.strftime("Today is day %j")
Unix/Linux
# Get day number date +%j # For specific date date -d "2025-07-16" +%j # With year (ISO ordinal format) date +%Y-%j # Alternative using awk date | awk '{print strftime("%j")}' # Using GNU date with custom format date "+Today is day %j of %Y"