# TimeZone Formatting in Expression

**URL:** <https://forum.inductiveautomation.com/t/timezone-formatting-in-expression/26760>\
**Category:** Ignition\
**Created:** [July 22, 2019, 4:46pm UTC](https://forum.inductiveautomation.com/t/timezone-formatting-in-expression/26760 "2019-07-22T16:46:43Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![tjfvv](https://avatars.discourse-cdn.com/v4/letter/t/b19c9b/32.png) [@tjfvv](https://forum.inductiveautomation.com/u/tjfvv)\
**Post date:** [July 22, 2019, 4:46pm UTC](https://forum.inductiveautomation.com/t/timezone-formatting-in-expression/26760/1 "2019-07-22T16:46:43Z")

</div>

Our gateway is based in PDT but most of our clients are in EDT. In the designer, we can select Perspective\>Project Timezone to be either America/New\_York or Client Timezone. The Perspective timeZoneID changes appropriately and the now() function returns the correct time. However, if I use dateFormat(now(), ‘z’), I’ll get PDT and any time will be shown in PDT. Am I missing something?

---

<div class="post-metadata">

**Author:** ![KathyApplebaum](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kathyapplebaum/32/7261_2.png) [@KathyApplebaum](https://forum.inductiveautomation.com/u/KathyApplebaum)\
**Post date:** [July 22, 2019, 7:53pm UTC](https://forum.inductiveautomation.com/t/timezone-formatting-in-expression/26760/2 "2019-07-22T19:53:47Z")

</div>

Perspective expressions are always executed on the Gateway, so what you’re seeing is exactly what I expect to happen.

---

<div class="post-metadata">

**Author:** ![tjfvv](https://avatars.discourse-cdn.com/v4/letter/t/b19c9b/32.png) [@tjfvv](https://forum.inductiveautomation.com/u/tjfvv)\
**Post date:** [July 23, 2019, 3:53pm UTC](https://forum.inductiveautomation.com/t/timezone-formatting-in-expression/26760/3 "2019-07-23T15:53:06Z")

</div>

What does “Perspective\>Project Timezone” affect then? What gets evaluted on the client and what gets resolved on the Gateway?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [July 23, 2019, 4:36pm UTC](https://forum.inductiveautomation.com/t/timezone-formatting-in-expression/26760/4 "2019-07-23T16:36:22Z")

</div>

The answer is, it depends. Things like charts pretty much entirely reside in the client - but all of the things that are common to different Ignition scopes (expressions, Python scripting) _by necessity_ have to run on the backend; there’s no [1] way to run Python code directly in the web browser, nor our custom, Java-based expression language.
