OxCal > Analysis > Calendar



OxCal uses an internal date/time format which is based on the Gregorian calendar since this is the standard universally accepted for almost all purposes. Since this calendar was only introduced in 1582 its use prior to this date (often referred to as 'proleptic') needs to be made clear. However, on long timescales it seems a more logical choice than the Julian calendar.

The date/time format used is 1.0 plus the real number of Gregorian years (each of which is days) from the start of the Gregorian epoch (01 January 0001 00:00:00 or Julian day ). The abbreviation that will be used here is a prefix of G to distinguish it from the two most widely used astronomical fractional year measures which use B for the Besselian epoch dates and J for Julian epoch dates. It is hoped that this internal standard will be more widely adopted as a simple and easy to use standard for this type of application.

To show how this works in practice, let us consider some specific examples: to a good approximation G1066.0 is the start of the year AD1066 while G-46.0 is the start of ISO-8601 year -46 which is 47BC in either the Julian or Gregorian calendars. It should be said that for most practical purposes the numbers can simply be rounded to give the right year ± 1. For higher precision work the conversions below can be used to convert to many widely used date formats. Some, including the author, may have wished that a convention 1 year lower had been chosen (so that -10 was the start of 10BC and +10 the end of AD10) as this would have made better sense in terms of the definition of the calendar by Bede. However, this would have been at variance with the other fractional year definitions in current use, and the ISO-8601 year definition which includes a year zero, and so would have been likely to have caused confusion. As it is the definition provided here is typically within one day of the Besselian astronomical system - the main difference being that it is synchronised to the Gregorian calendar and has a fixed year length. In some ways the best measure of time for this sort of application is Julian Days frequently used in astronomy. However this measure is very difficult to interpret by eye. The format proposed here, is simply converted to and from that standard:

G = 1 +

JD =

Some sample date conversions are shown here:

OxCal native format
Weekday Gregorian date Julian date
2001.0 Monday 01 January AD 2001 00:00:00 19 December AD 2000 00:00:00
2000.0 Saturday 01 January AD 2000 18:10:48 18 December AD 1999 18:10:48
1601.0 Monday 01 January AD 1600 00:00:00 22 December AD 1600 00:00:00
1.0 Monday 01 January AD 0001 00:00:00 03 January AD 0001 00:00:00
-399.0 Monday 01 January 0400 BC 00:00:00 06 January 0400 BC 00:00:00

In this context it also seems sensible to define more closely what the term cal BP means chronologically. This is usually used only to refer to a whole year (ie it is an integer value). However, this can lead to ambiguities, particularly when used in the Southern Hemisphere. Since it usually refers to any time within a year, it is here defined with a datum in the middle of 1950 (ie G1950.5 or 03 July 1950), when rounded to the nearest year this will give the expected year in almost all cases. When specified in this way it can also be used in its fractional form for date calculations - though in general, the Gregorian calendar or Julian days are a much more sensible standard for anything requiring this sort of precision.

Calendar conversions

This section is largely based on Fourmilab's calendar converter by John Walker with extensions added for dealing with OxCal native date/time format and the BP timescale. For further details on the calendars please see the original document.

Gregorian years
OxCal native date/time format
Besselian years (approximate)
Julian years
cal BP
Gregorian Calendar
Julian Day
Julian Calendar
Hebrew Calendar
Islamic Calendar
Persian Calendar
Mayan Calendars
Bahá'í Calendar
Indian Civil Calendar
French Republican Calendar
ISO-8601 Week and Day, and Day of Year
Unix time() value
Excel Serial Day Number


Please see Fourmilab's calendar converter by John Walker for all references for the calculations here.