Europe/Belgrade time zone
1:11PMCET
CETUTC+1+6 h vs New York (you)
- Next transition: Sunday, March 28, 2027: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Next transition: Sunday, October 31, 2027: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Next transition: Sunday, March 26, 2028: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Next transition: Sunday, October 29, 2028: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Next transition: Sunday, March 25, 2029: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Next transition: Sunday, October 28, 2029: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Next transition: Sunday, March 31, 2030: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Next transition: Sunday, October 27, 2030: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Next transition: Sunday, March 30, 2031: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Next transition: Sunday, October 26, 2031: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Next transition: Sunday, March 28, 2032: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Next transition: Sunday, October 31, 2032: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
About Europe/Belgrade
Europe/Belgrade is the IANA time zone for Serbia, Bosnia and Herzegovina, Croatia, Montenegro, North Macedonia and Slovenia. It currently keeps Central European Standard Time (CET, UTC+1) in winter and Central European Summer Time (CEST, UTC+2) in summer.
The zone serves 6 countries or territories because their clocks have agreed since 1970; tzdata lists them together in zone1970.tab. That says nothing about borders or sovereignty, as the file’s header points out.
Its principal location is Belgrade at 44.83° N, 20.50° E.
Abbreviations in use: CET, CEST. Offset page: UTC+1.
Rule for future years (POSIX TZ string)
CET-1CEST,M3.5.0,M10.5.0/3
The standard time is called CET and is UTC+1. POSIX writes the offset with the opposite sign (west of Greenwich is positive), which is why the string says "-1". Daylight saving time is called CEST and is UTC+2. It starts on the last Sunday of March at 02:00 and ends on the last Sunday of October at 03:00, local time. Software that has no full tzdata copy, such as many embedded devices, can use this string directly as the TZ environment variable.
Upcoming transitions
- Sunday, March 28, 2027: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Sunday, October 31, 2027: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Sunday, March 26, 2028: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Sunday, October 29, 2028: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Sunday, March 25, 2029: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Sunday, October 28, 2029: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Sunday, March 31, 2030: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Sunday, October 27, 2030: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Sunday, March 30, 2031: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Sunday, October 26, 2031: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
- Sunday, March 28, 2032: at 2:00 AM clocks go forward 1 hour to 3:00 AM (CEST, UTC+2)
- Sunday, October 31, 2032: at 3:00 AM clocks go back 1 hour to 2:00 AM (CET, UTC+1)
Computed from tzdata 2026f; local times are read on the clock just before each change.
History of Europe/Belgrade since 1970
The record starts with local mean time (UTC+1:22), which ended on January 1, 1884. The first daylight saving time in the record is in 1941.
| Years | Clocks | Abbreviations |
|---|---|---|
| 1970–1982 | UTC+1 all year | CET |
| 1983 onward | UTC+1 in winter, UTC+2 in summer | CET, CEST |
Before 1970
9 offset changes before 1970 in the record:
- Tuesday, January 1, 1884: UTC+1:22 → UTC+1 (CET)
- Friday, April 18, 1941: UTC+1 → UTC+2 (CEST), daylight saving time
- Monday, November 2, 1942: UTC+2 → UTC+1 (CET)
- Monday, March 29, 1943: UTC+1 → UTC+2 (CEST), daylight saving time
- Monday, October 4, 1943: UTC+2 → UTC+1 (CET)
- Monday, April 3, 1944: UTC+1 → UTC+2 (CEST), daylight saving time
- Monday, October 2, 1944: UTC+2 → UTC+1 (CET)
- Tuesday, May 8, 1945: UTC+1 → UTC+2 (CEST), daylight saving time
- Sunday, September 16, 1945: UTC+2 → UTC+1 (CET)
tzdata commits to accuracy from 1970 for every zone (zone1970.tab); earlier entries are historical research and may be incomplete.
Aliases and zones with the same clock
These older or country-specific IDs are links to Europe/Belgrade in tzdata. Their pages redirect here: Europe/Ljubljana, Europe/Podgorica, Europe/Sarajevo, Europe/Skopje, Europe/Zagreb.
Other zones that keep exactly the same time under the current rules (but have a different history): Africa/Ceuta, Europe/Andorra, Europe/Berlin, Europe/Brussels, Europe/Budapest, Europe/Gibraltar, Europe/Madrid, Europe/Malta, Europe/Paris, Europe/Prague, Europe/Rome, Europe/Tirane.
Places on Europe/Belgrade
Convert Belgrade time
Using Europe/Belgrade in code
Every major platform reads the same IANA ID. Store instants in UTC and convert with the ID at display time; never store a fixed offset for a place that has daylight saving time.
// JavaScript
new Date().toLocaleString('en-US', { timeZone: 'Europe/Belgrade' })
# Python 3.9+
from zoneinfo import ZoneInfo
from datetime import datetime
datetime.now(ZoneInfo('Europe/Belgrade'))
// Java
java.time.ZonedDateTime.now(java.time.ZoneId.of("Europe/Belgrade"))
// Go
loc, _ := time.LoadLocation("Europe/Belgrade")
time.Now().In(loc)
-- PostgreSQL
SELECT now() AT TIME ZONE 'Europe/Belgrade';
# Shell
TZ='Europe/Belgrade' date Platforms ship their own copy of tzdata and update it on their own schedule. After a rule change, outputs can differ until the platform updates; this page uses tzdata 2026f.