Good questions — this is a rather common one and there's no single "right" answer, so let me point out some options.
Can Jira natively calculate a custom field?
Actually, yes — Jira recently introduced formula fields (currently in beta, team-managed spaces only). These let you create a custom field that automatically calculates a value from other number fields on the same issue. You'd create one via Space settings > Fields > Add field > Formula, and write something like {Original Estimate} - {Time Spent}. You can format the output as a number, currency, or percentage.
Limitations to know about:
If formula fields work for your setup, that's the cleanest native solution. If you're on a company-managed project or need cross-issue aggregation, than this is not (yet) possible.
Option 1: Automation rules
This is the most common native approach. You can create an automation rule that recalculates "Savings" whenever relevant data changes:
{{issue.timespent}} or {{issue.timeoriginalestimate}}{{issue.timeoriginalestimate.minus(issue.timespent)}}Limitations to be aware of:
Option 2: ScriptRunner or similar apps
If you're on a company-managed project (where formula fields aren't available yet), scripted field apps like ScriptRunner let you write Groovy or JS to compute values on the fly. These are more flexible than both formula fields and automation — they can reference any field type, work with dates and text, and update on every view.
Option 3: Keep it outside Jira custom fields
If you don't strictly need the value stored as a Jira field (e.g., for JQL filtering or SLA purposes), you can compute and display it using a Marketplace app without creating a custom field at all. This avoids the "stale data" problem entirely since the calculation runs at display time.
On that last point — another solution from the Atlassian Marketplace, the app that my team and I are working on, JXL for Jira, is built for exactly this kind of thing.
JXL gives you a spreadsheet-style view of your issues where you can add smart columns — calculated columns that don't require Jira custom fields. These include built-in time tracking calculations, but you can also write your own using JXL's formula language (JFL). For example, a "Savings" column could be as simple as:
(originalEstimate - timeSpent) / 3600
This computes at display time, so the value is always current — no automation lag. And unlike Jira's native formula fields, JXL formulas work across issues too — you can use sum-ups to aggregate savings across epics or any other hierarchy level, and conditional formatting to highlight issues where savings are negative.
Disclosure: I work for the team that builds JXL.
Hope that helps,
Cheers, Paul
Hey Kalyani,
Jira does not natively support real-time calculated custom fields (like "Savings" based on time spent) is out-of-the-box.
You can use an app like ScriptRunner for Jira | Atlassian Marketplace or Zephyr - Test Management and Automation for Jira | Atlassian Marketplace to create a calculated custom field.
Also you can use Jira's built-in automation to update a custom field whenever a worklog is added/updated.
Please note that:
Use Marketplace Apps for complex calculations or real-time updates.
Keep Calculations Simple if using Jira Automation (e.g., sum worklogs on issue events).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.