Hi @russell,
Thank you for reaching out and for the kind words about the plugin! I am glad to hear it is a core feature of your app.
This discrepancy occurs because Bubble stores all Date type field data as absolute UTC timestamps. When a client in Japan selects a date, the picker records a timestamp based on their local time zone. When a user in England views that saved date field, Bubble converts the UTC timestamp into English local time, which can shift the display date back to September 30th if the timestamp falls near midnight UTC.
Here are the most effective ways to record and display dates consistently across different time zones:
Option 1: Store the Date as Text (Recommended for Date-Only Inquiries) If you only need to record the calendar day without a specific time:
- Create a Text field in your database (e.g.,
Event Date Text).
- In your workflow, save the date using formatted text:
Picker's value:formatted as yyyy-mm-dd.
- Display this text string directly in your app. Text values are static strings, so they will never shift based on the viewer’s location.
Option 2: Normalize the Timestamp to Midday UTC If you need to keep the database field type as a Date:
- Set the Time Zone configuration option inside the plugin element properties to UTC.
- In your workflow step when saving the date to the database, force the time portion to midday UTC by appending
:change hours to 12.
- Setting the timestamp to 12:00 PM UTC provides a 12-hour buffer in either direction, preventing local time zone offsets from crossing midnight into a different day.
Option 3: Enforce Uniform Time Zone Settings
- Ensure that both the date picker element and any calendar or display elements on the Account Owner side are explicitly configured to use the exact same time zone setting (e.g., UTC) rather than dynamic client time zones.
Please test these options in your workflows and let me know if you need any additional guidance.
Best regards,
Support Team
Browse all Zeroqode Plugins for bubble
