Excel guide · 6 min read
How to convert time zones in Excel
=B2+G2/24 turns a UTC time in B2 into local time when G2 holds the offset, such as -5 for New York in winter or 5.5 for India. Keep the offsets in a small lookup table and pull them in with =B2+XLOOKUP(C2,F2:F6,G2:G6)/24. Excel has no built-in time-zone function, so daylight saving is something you enter yourself.Sample data
Every result on this page was calculated from this sheet by the same spreadsheet engine the Cellwise app uses.
| A | B | C | D | E | F | G | H | I | J | K | L | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Call | UTC time | Office | Office | UTC offset (h) | Label | UTC time only | Office | ||||
| 2 | C-201 | Oct 30, 2026 14:00 | New York | London | 0 | UTC+00:00 | 1:15 | New York | ||||
| 3 | C-202 | Nov 2, 2026 14:00 | New York | New York | -5 | UTC-05:00 | New York | |||||
| 4 | C-203 | Nov 2, 2026 3:30 | Mumbai | Mumbai | 5.5 | UTC+05:30 | London | |||||
| 5 | C-204 | Nov 2, 2026 22:45 | Sydney | Sydney | 11 | UTC+11:00 | London | |||||
| 6 | C-205 | Nov 3, 2026 1:15 | New York | Kathmandu | 5.75 | UTC+05:45 | ||||||
| 7 | C-206 | Nov 3, 2026 9:00 | London | |||||||||
| 8 | C-207 | Nov 3, 2026 4:10 | Kathmandu |
Download this sheet as an Excel practice file (.xlsx)
Add the offset divided by 24
The sheet is a support log. Every call is stamped in UTC in column B, and each office wants to see its own local time. Excel stores a date and time as a number of days, so one hour is 1/24. An offset of -5 hours is -5/24 of a day.
Put the offsets in a table instead of typing them into each formula: office names in F2:F6 and offsets in decimal hours in G2:G6. Then one formula fills down the whole log, and when an office's offset changes you edit one cell. Format the result as a date and time (for example yyyy-mm-dd hh:mm with Ctrl+1 > Custom) so you can see the date as well as the clock time.
To go the other way, from local time to UTC, subtract the offset instead: =B2-XLOOKUP(C2,F2:F6,G2:G6)/24. XLOOKUP needs Excel 365 or 2021; in older versions use VLOOKUP(C2,$F$2:$G$6,2,FALSE) in the same place.
Result: 2026-11-03 09:45
2026-11-03 09:45: call C-204 came in at 22:45 UTC on 2 November, which is 9:45 the next morning in Sydney (offset +11).
Let the date roll, or keep only the time
When column B holds a full date and time, the date moves by itself. Call C-205 was logged at 1:15 UTC on 3 November. Five hours earlier is still 2 November in New York, and the formula shows that. This is why UTC with a full date is the safest thing to store: every conversion is correct, including the day.
A time on its own is different. J2 holds just 1:15 with no date. Subtracting five hours gives -0.15625, a negative time, and Excel shows ##### in a time-formatted cell because it cannot display negative times. Wrap time-only results in MOD(...,1), which wraps them back into a single day: =MOD(J2-5/24,1) gives 20:15. The catch is that MOD throws the date away, so you no longer know it was the previous day. If the day matters, add the date to the time before converting.
Result: Mon 2 Nov 20:15
Mon 2 Nov 20:15. The UTC stamp says Tuesday, but the New York office took the call on Monday evening.
Half-hour and 45-minute zones
Not every offset is whole hours. India is UTC+5:30 and Nepal is UTC+5:45. In decimal hours those are 5.5 and 5.75, and /24 works the same way: call C-207 at 4:10 UTC is 9:55 in Kathmandu.
The trap is mixing two kinds of offset. If someone types 5:45 into the offset cell, Excel stores it as a time (5 hours 45 minutes as a fraction of a day), which is already in days. Add it directly, or with =B8+TIME(5,45,0); dividing it by 24 again shrinks it to about 14 minutes. The opposite mistake is adding the decimal 5.75 without /24: Excel adds 5.75 days, and the call jumps to 2026-11-08 22:10. Pick decimal hours for the whole table, since negative offsets such as -5 cannot be typed as a time anyway.
Offsets often arrive as text labels like UTC+05:30, as in H2:H6. Read the sign from the 4th character and the hours and minutes from the digits. The formula below turns UTC-05:00 into -5; on UTC+05:45 it gives 5.75.
Result: -5
-5, the New York offset as a number you can divide by 24. This only works when every label follows the same UTC+hh:mm pattern.
Daylight saving: a dated offset table
One fixed offset per office is right only between clock changes. Call C-201 was on 30 October, when New York was still on daylight time (UTC-4). The simple table above uses -5 and shows 9:00, an hour early. Excel knows nothing about daylight saving, so you have to tell it when each offset starts.
Make a second table with one row per change: office in L, the UTC moment the offset starts in M, and the offset in N. Look up the office's row whose start is on or before the call time. Fill the dates from an official source for each year you need; they move every year and differ by country, and some places have no daylight saving at all. Keep each office's rows in date order, oldest first.
XLOOKUP looks for the 1 that marks "this office and already started", and the final -1 searches from the bottom up, so it lands on the latest change that applies. For C-201 that is -4, giving 10:00. For C-202 on 2 November it returns -5. In Excel 2019 and older, =LOOKUP(2,1/((L2:L5=C2)*(M2:M5<=B2)),N2:N5) does the same job.
Result: -4
-4: on 30 October New York's latest change was the March one, so it was still on daylight time.
Convert between two zones (meeting planner)
To go from one local zone to another, add the difference between the two offsets. A meeting at 9:00 New York time on 5 November is 14:00 UTC (9:00 minus -5 hours). In Sydney, 16 hours ahead of New York at that date, it is 1:00 the next morning; in Kathmandu it is 19:45 the same evening.
For anything you will reuse, convert to UTC first and then to each zone, rather than storing pairwise differences. Two lookups against one table is easier to check than a grid of differences that each need updating when one place changes its clocks.
Result: Fri 6 Nov 01:00
Fri 6 Nov 01:00: a Thursday-morning meeting in New York lands in the middle of Sydney's night.
Which approach to use
Store UTC with the full date as the source of truth and add a local-time column per office: the stamps sort correctly, durations between them are right, and nothing breaks when the clocks change. Use the fixed offset table for offices with no daylight saving or for a short period; switch to the dated table once your data spans a clock change. Use MOD only for time-only values where the day does not matter.
Watch where the times come from. NOW() returns your computer's local clock time, not UTC, so stamping a log with it in two offices gives two different time bases. In Power Query, datetimezone values carry an offset, and DateTimeZone.SwitchZone moves them to another fixed offset, but it still does not know the daylight-saving dates for you.
Common mistakes
Adding the offset without /24
=B2+5.5 adds five and a half days. Divide decimal hours by 24: =B2+5.5/24.
Dividing an offset typed as 5:30 by 24 again
A cell showing 5:30 is already a time in days. Add it directly, or keep every offset as decimal hours (5.5) and divide by 24.
One offset for the whole year
Zones with daylight saving have two offsets. Use a dated offset table and look up the latest change on or before each timestamp.
Converting time-only values and losing the day
MOD fixes the ##### but drops the date. Keep a full date and time in UTC so the local date is correct too.
FAQ
How do I convert UTC to local time in Excel?
Add the offset in hours divided by 24: =A2+5.5/24 for UTC+5:30, or =A2-5/24 for UTC-5. Keep the offset in its own cell so you can change it when the clocks change.
How do I convert EST to IST in Excel?
India is 10.5 hours ahead of New York while New York is on standard time (UTC-5 versus UTC+5:30): =A2+10.5/24. During US daylight time the gap is 9.5 hours. Converting through UTC with an offset table avoids keeping track of the gap.
Does Excel adjust for daylight saving time automatically?
No. Excel's dates and times carry no time zone, and no worksheet function knows daylight-saving rules. Put the offset for each period in a table and look it up by date.
Why does my converted time show #####?
The result is a negative time, usually a time-only value moved before midnight. Wrap it in MOD(...,1), or include the date so the result moves to the previous day instead.
Is there a time zone function in Excel?
There is no worksheet function that converts between named time zones. Use the offset/24 method with a lookup table, or Power Query's datetimezone functions for fixed offsets.
Functions used
XLOOKUPModern lookup in any directionTEXTNumber to formatted textMODRemainder after divisionTIMEBuilds a timeMIDCharacters from the middleIFPicks a result from a testLOOKUPApproximate lookup in sorted dataVLOOKUPVertical lookup
Related guides
- How to add hours and minutes to a time in Excel
- Calculate hours between two dates and times in Excel
- Calculate hours worked overnight in Excel
- XLOOKUP with multiple criteria
- VLOOKUP returns 0 instead of blank: how to fix it
- How to calculate a weighted score in Excel
Updated