Time difference between Milan and Saint Petersburg
Saint Petersburg is 1 hours ahead of Milan.
Local time in both cities
Milan · Italy
23:26
Saint Petersburg · Russia
00:26
Saint Petersburg is 1 hours ahead of Milan.
already the next day
Time zones
| Milan | Europe/Rome · UTC+02:00 |
|---|---|
| Saint Petersburg | Europe/Moscow · UTC+03:00 |
Milan is currently on daylight saving time (UTC+02:00). Next change: 2026-10-25 02:00.
Saint Petersburg does not observe daylight saving and stays on UTC+03:00 all year.
Hour-by-hour conversion
Calculated for 2026-09-20 local time in Milan. The two places start and end daylight saving on different dates, so another day can give a different result.
| Milan (source) | Saint Petersburg (target) |
|---|---|
| 00:00 | 01:00 |
| 01:00 | 02:00 |
| 02:00 | 03:00 |
| 03:00 | 04:00 |
| 04:00 | 05:00 |
| 05:00 | 06:00 |
| 06:00 | 07:00 |
| 07:00 | 08:00 |
| 08:00 | 09:00 |
| 09:00 | 10:00 |
| 10:00 | 11:00 |
| 11:00 | 12:00 |
| 12:00 | 13:00 |
| 13:00 | 14:00 |
| 14:00 | 15:00 |
| 15:00 | 16:00 |
| 16:00 | 17:00 |
| 17:00 | 18:00 |
| 18:00 | 19:00 |
| 19:00 | 20:00 |
| 20:00 | 21:00 |
| 21:00 | 22:00 |
| 22:00 | 23:00 |
| 23:00 | 00:00 next day |
Other common differences from Milan
FAQ
- How many hours apart are Milan and Saint Petersburg right now?
- The answer at the top of the page is calculated for the current moment and states which side is ahead. The gap changes during the year, because the two places usually start and end daylight saving on different dates.
- Is this difference the same all year?
- Not necessarily. Milan uses Europe/Rome and Saint Petersburg uses Europe/Moscow; if either observes daylight saving, the gap shifts during the year. Use “Convert a specific date and time” below to calculate it for a given day.
- How do I read the conversion table?
- The left column lists each whole hour in Milan; the right column is the local time in Saint Petersburg at that same instant, with date rollovers marked. On the day clocks jump forward, some hours do not exist locally — the table says so instead of showing a plausible but wrong value.