America/Mexico_City
America/Mexico_City covers Mexico City, Iztapalapa, Puebla and the rest of Mexico, at -06:00 standard time, with no daylight saving time.
Worked examples
- A winter instant in America/Mexico_City
America/Mexico_City's UTC offset and DST status on a January date, converted to UTC.
- A summer instant in America/Mexico_City
America/Mexico_City's UTC offset and DST status on a July date, converted to UTC — compare against the winter example to see any DST shift.
- Converting America/Mexico_City to America/New_York
A worked conversion from America/Mexico_City to America/New_York for a specific instant.
TZ identifier and aliases
America/Mexico_City is the canonical identifier for Central Time in
Mexico, covering the capital and most of the country's interior.
Mexico/General is an older name still pointing at the same rules but is a
deprecated alias — use America/Mexico_City in new code. America/Monterrey,
America/Merida, America/Chihuahua and America/Bahia_Banderas currently
share identical rules and are folded into the same entry.
UTC offset and DST rule
America/Mexico_City is -06:00 year-round with no daylight saving time.
Mexico's Congress discontinued DST nationally in a law published in
November 2022 — the most significant change to Mexican timekeeping in
decades — so most of the country, including Mexico City, no longer shifts
clocks at all. The main exceptions are Baja California and a strip of
municipalities within 20km of the US border, which still follow the US DST
schedule to stay aligned with neighboring American states; Sonora, notably,
does not observe DST and hasn't for years.
Using it in cron, CI and Postgres
Set TZ=America/Mexico_City for a process that should schedule by central
Mexican local time — naming the zone rather than a fixed -06:00 offset
keeps a config correct automatically if the rule changes again, which is a
real possibility for a zone with such a recent legal shift. Postgres
accepts it via SET TIME ZONE 'America/Mexico_City'; or the timezone
setting. Because the zone is currently fixed, a cron job's local-time
schedule now behaves identically every day of the year for most of the
country — a change worth double-checking in any system that still has
DST-adjustment logic left over from before the 2022 law, since that code is
now either dead or, if mistakenly still active, quietly wrong.
History and quirks
Mexico had observed some form of daylight saving since 1996, but public opposition grew over the following decades — polling consistently showed a majority of Mexicans wanted it abolished, citing disrupted sleep and routines for limited measurable energy savings. Congress acted on that sentiment in October 2022, discontinuing DST nationwide except along the US border, where keeping the same clock as neighboring US states matters more for daily cross-border commuting and commerce than any national energy policy. The exception itself is a good illustration of how time zone rules often follow economic geography rather than political borders: Baja California's tourism and labor markets are tightly linked to California's, so it kept US-style DST even as the rest of the country dropped it entirely.
Offsets and DST transitions on this page are computed from the IANA time zone database bundled with your browser; the rules described above were verified against tzdata 2026b when this page was published.
Frequently asked questions
- Does America/Mexico_City observe DST?
- No — America/Mexico_City keeps a fixed -06:00 offset from UTC all year, with no seasonal clock change.
- What is the UTC offset of America/Mexico_City in winter/summer?
- America/Mexico_City is -06:00 year-round — the same offset applies in every season.
- Which cities use America/Mexico_City?
- Mexico City, Iztapalapa, Puebla, Ecatepec de Morelos all use the America/Mexico_City zone — also commonly known as Central Time — along with the rest of Mexico.
- What is the deprecated alias for this zone?
- Mexico/General is a deprecated backward-compatibility name for this zone. Use the canonical identifier America/Mexico_City in code, cron jobs, `TZ` environment variables and config files instead.