# Timezone related issue

**URL:** <https://forum.inductiveautomation.com/t/timezone-related-issue/113694>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [February 2, 2026, 1:19pm UTC](https://forum.inductiveautomation.com/t/timezone-related-issue/113694 "2026-02-02T13:19:22Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jay.jain](https://avatars.discourse-cdn.com/v4/letter/j/da6949/32.png) [@jay.jain](https://forum.inductiveautomation.com/u/jay.jain)\
**Post date:** [February 2, 2026, 1:19pm UTC](https://forum.inductiveautomation.com/t/timezone-related-issue/113694/1 "2026-02-02T13:19:22Z")

</div>

We are receiving a timestamp value from MES in **UTC format** , which is being written to a **memory tag** of datatype **DateTime**. We have a **tag value change script** configured on this memory tag that processes the timestamp and writes it to another **OPC tag** of **String** datatype in the format **MM/DD/YYYY**.

However, we are observing a **time difference of 11.5 hours** in the OPC tag value. This discrepancy appears to be due to a **time zone mismatch** :

- The **Ignition gateway** is configured to the **America/Chicago** time zone.

- The **system** is based on **IST (UTC +5:30)**.

Has anyone encountered a similar issue involving **UTC timestamps, DateTime tags, and differing gateway/system time zones**? Any guidance on best practices for handling time zone conversions or avoiding unintended offsets would be greatly appreciated.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 2, 2026, 1:40pm UTC](https://forum.inductiveautomation.com/t/timezone-related-issue/113694/2 "2026-02-02T13:40:08Z")

</div>

Ignition's DateTime tags, and datetime values/timestamps throughout Ignition, use the `java.util.Date` data type. This type is fundamentally UTC. Any datetime parsing or printing automatically applies the JVM timezone.

If your MES is supplying UTC timestamps **as strings** , they will be naïvely interpreted in the gateway's timezone. Then when displayed in a project/client configured to IST, that already wrong timestamp will be butchered further. As you already see.

If you need to parse or stringify timestamps that are **not** in the Ignition gateway's timezone, you **must** use java's `ZonedDateTime` and `ZoneId` data types instead of Ignition's normal helpers.

Some reading and scripts to help you:

> [@Gateway Timezones and Script function behavior](https://forum.inductiveautomation.com/t/gateway-timezones-and-script-function-behavior/107050/4):
>
> NO Don't do arithmetic with dates to correct for time zones. java.util.Date objects are fundamentally UTC under the hood, representing a worldwide point in time, and trying to "adjust" them to correct for timezones simply makes them incorrect. If you pass incorrect timestamps to historian calls or other system functions, you will get wrong answers. These objects are stringified in the timezone of the JVM that does the string conversion, and are created by string parsing in the timezone of t…

> [@Ignition Perspective Page to show the client System date and time](https://forum.inductiveautomation.com/t/ignition-perspective-page-to-show-the-client-system-date-and-time/73265):
>
> Is it possible to display the client computer/system date and time on perspective web page? dateFormat(now(60000), "yyyy-MMM-dd HH:mm:ss a") showing the Gateway Server system date and time. Under Browse Tags-\> System -\> Client Tags are not available for Perspective sessions.
