# TODAY() Optimization Question

**URL:** <https://air.tableforums.com/t/today-optimization-question/1277>\
**Category:** Airtable Questions\
**Created:** [August 9, 2024, 6:59pm UTC](https://air.tableforums.com/t/today-optimization-question/1277 "2024-08-09T18:59:33Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![noahcoleman](https://avatars.discourse-cdn.com/v4/letter/n/9fc29f/32.png) [@noahcoleman](https://air.tableforums.com/u/noahcoleman)\
**Post date:** [August 9, 2024, 6:59pm UTC](https://air.tableforums.com/t/today-optimization-question/1277/1 "2024-08-09T18:59:33Z")

</div>

Hi all,  
I have a base tracking training for various tools in a makerspace where each record represents a user and there are four fields for each training:

- Training Date (date field)
- Given By (link to “Staff” table)
- Expiration (Formula field that adds a year to the training date)
- Status (Formula field that returns “Valid” or “Expired” based on comparing the Expiration field to `TODAY()`.

I’m tracking 17 trainings, so that means I’m calling `TODAY()` 17 times on this table. Would I be better off just creating one “Today” field and then referencing that field in the status formulas?

---

<div class="post-metadata">

**Author:** ![kls06541](https://avatars.discourse-cdn.com/v4/letter/k/d07c76/32.png) [@kls06541](https://air.tableforums.com/u/kls06541)\
**Post date:** [August 12, 2024, 4:18am UTC](https://air.tableforums.com/t/today-optimization-question/1277/2 "2024-08-12T04:18:57Z")

</div>

From GPT:

Yes, it would be more efficient to create a single “Today” field that contains the result of `TODAY()` and then reference that field in your status formulas. This approach reduces the number of times `TODAY()` is calculated, improving performance, especially with 17 trainings.

You can create a field named `{Today}` with the formula:

```markdown
TODAY()

```

Then, for each of your status fields, you can update the formula to reference this `{Today}` field instead of calling `TODAY()` directly. For example:

```markdown
IF(
  {Expiration} > {Today},
  "Valid",
  "Expired"
)

```

This way, you only calculate the current date once, and all your status fields can reference this single value, making your base more efficient.

---

<div class="post-metadata">

**Author:** ![noahcoleman](https://avatars.discourse-cdn.com/v4/letter/n/9fc29f/32.png) [@noahcoleman](https://air.tableforums.com/u/noahcoleman)\
**Post date:** [August 12, 2024, 1:20pm UTC](https://air.tableforums.com/t/today-optimization-question/1277/3 "2024-08-12T13:20:53Z")

</div>

Thanks @kls06541, that’s kind of what I assumed, but I wasn’t sure. I didn’t think to ask the GPT, though. I’ll try to keep that in mind for next time!
