Skip to content

Timezone dropdown shows static GMT offsets, not accounting for DST #24559

@niranjan-uma-shankar

Description

@niranjan-uma-shankar

Issue Summary

Description

On the /settings/timezone page, the timezone dropdown currently displays fixed GMT offsets that do not account for Daylight Saving Time (DST). As a result, the displayed offsets can be misleading during parts of the year when certain regions observe DST.

Current Behaviour

The dropdown shows static offsets regardless of the current time of year. For example, at the time of writing:

City Displayed Offset Actual Offset
Amsterdam GMT+1 GMT+2
Casablanca GMT+0 GMT+1
Athens GMT+2 GMT+3

Screenshot

Image.

Expected Behavior

The dropdown should display the current GMT offset, dynamically adjusted to account for DST. This is the behavior adopted by most modern platforms, and provides for a better user experience.

Here are examples of how other services handle this correctly:

Platform Screenshot
Notion Image
Zoom Image
MacOS settings Image

Suggested Improvement

Continue showing the current time for the selected timezone (already implemented), but also update the GMT offset shown in the dropdown to reflect the current offset, including DST where applicable.

This would bring the UI in line with user expectations and reduce confusion.

Historical context

The dropdown values mirror those of Tumblr. From #6406:

The format should be (UTC) List, Of, Cities just like Tumblr
The list should contain exactly the same entries as Tumblr

However, Tumblr shows the correct DST-included offset for timezones. Here's a side-by-side comparison of Tumblr and Ghost's dropdowns.

Tumblr Ghost
Image Image

Steps to Reproduce

Visit /settings/timezone and click on the timezone dropdown.

Ghost Version

6.0.0-rc.0

Node.js Version

22.13.1

How did you install Ghost?

From source

Database type

SQLite3

Code of Conduct

  • I agree to be friendly and polite to people in this repository

Metadata

Metadata

Assignees

No one assigned

    Labels

    affects:adminAnything relating to Ghost Adminbug[triage] something behaving unexpectedlycommunity[triage] Community features and bugs

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions