Workday handles date math and date transformations through five core calculated field functions in the Create Calculated Field task (secured to the Custom Field Management domain in the System functional area): Date Difference (computing whole days, months, or years between two dates), Increment or Decrement Date (adding or subtracting date and time intervals), Build Date (assembling a date or timestamp from separate year, month, day, or time parts), Format Date (converting part of a date into text or fiscal periods), and Lookup Value as of Date (evaluating effective-dated or entry-dated values at a specific point in time).
Choosing the right Workday date calculated field function
Before opening Create Calculated Field, match your output data type and business logic to the right function.
| Function | Output Type | Primary Purpose | Blank / Error Handling Option |
|---|---|---|---|
| FunctionDate Difference | Output TypeNumeric (whole number, rounded down) | Primary PurposeCompute days, months, or years between a Start Date Field and an End Date Field. | Blank / Error Handling OptionReturn Zero on Error (always returns zero on error for Prism business objects). |
| FunctionIncrement or Decrement Date | Output TypeDate or Date/Time | Primary PurposeAdd or subtract years, months, days, hours, minutes, seconds, or milliseconds from a Date Field. | Blank / Error Handling OptionReturn Blank Date on Error (always returns blank on error for Prism business objects). |
| FunctionBuild Date | Output TypeDate, Time, or DateTimeZone | Primary PurposeConstruct a new date or timestamp from extracted date parts (Extract Year/Month/Day from Date Field) or fixed integers (Specific Year/Month/Day). | Blank / Error Handling OptionReturn Blank Date on Error (always returns blank on error for Prism business objects). |
| FunctionFormat Date | Output TypeText | Primary PurposeExtract parts of a date into text using predefined options, Fiscal Formats, or a custom Format Mask. | Blank / Error Handling OptionReturns blank text when the source date is empty. |
| FunctionDate Constant | Output TypeDate, Date and Time, or Date, Time and Timezone | Primary PurposeDefine a fixed calendar date or timestamp for comparisons and as-of lookups. | Blank / Error Handling OptionStatic value. |
| FunctionLookup Value as of Date | Output TypeMatches the Source Field type | Primary PurposeRetrieve the value of an effective-dated field as of an Effective Date or Entry Date. | Blank / Error Handling OptionIgnores Effective Date if the underlying business object is not date-effective. |
1. Date Difference: tenure, age, and elapsed days
The Date Difference function computes the span between two date or date/time fields on your selected business object and rounds the result down to the nearest whole number.
Key settings on the Calculation tab
- Start Date Field: The earlier chronological boundary (for example, Hire Date on the
Workerbusiness object). - End Date Field: The later boundary (for example, Termination Date, Today, or Report Effective Date).
- Return Zero on Error: Check this box whenever either date field can be blank on valid records.
For example, an active employee has a Hire Date but no Termination Date. Without Return Zero
on Error, evaluating Termination Date minus Hire Date on an active employee produces a
calculation error; with it checked, Workday returns
0cleanly. - Ignore Lower Level Date Components: Controls whether Workday compares full calendar
anniversaries or only the target unit. For example, when calculating a difference in years between
2006-04-01and2008-02-15:- Unchecked: Workday returns
1year because a full 24 months have not yet elapsed (Workday rounds down to the nearest whole integer). - Checked: Workday ignores the month and day subcomponents (
2008 - 2006) and returns2years. Leave this unchecked for legal age or exact service-anniversary calculations.
- Unchecked: Workday returns
Avoiding negative or zero results on active vs. terminated workers
Two mistakes routinely break Date Difference columns in custom reports:
- Swapping Start Date Field and End Date Field: Workday calculates
End Date Field - Start Date Field. Putting Today in Start Date Field and Hire Date in End Date Field produces negative numbers for every worker hired in the past. Always place the earlier date in Start Date Field. - Using Termination Date for active workers: If you want a single "Tenure in Days" column that works for both active and terminated workers, first create an Evaluate Expression (or True/False Condition) calculated field that returns Termination Date when the worker is terminated and Report Effective Date (or Today) when active, then pass that field as the End Date Field in your Date Difference calculation.
2. Increment or Decrement Date: rolling windows and prior-millisecond lookups
Use Increment or Decrement Date to shift a date forward or backward by a fixed or field-driven interval.
Prerequisites and configuration
If you are shifting a date by a fixed offset (such as +6 months for a probation end date or -1
millisecond for an audit lookup), create the corresponding Numeric Constant fields first—or
create them inline from the prompt inside Increment or Decrement Date. Positive numeric
constants increment the date; negative numeric constants decrement it.
- Select your Date Field on the Calculation tab.
- Populate one or more offset prompts:
- Years to Add or Subtract
- Months to Add or Subtract
- Days to Add or Subtract
- Hours / Minutes / Seconds / Milliseconds to Add or Subtract (these four time prompts appear only when your selected Date Field includes a time component).
- Check Return Blank Date on Error so records missing the source date return an empty cell rather than an error indicator.
High-value use cases
- Rolling report filter windows: Create an Increment or Decrement Date field on the
Globalbusiness object starting from Today (or Report Effective Date) with Months to Add or Subtract set to2. Use that field in a custom report filter (Expiration Date is less than or equal to [Today + 2 Months]) to surface employee certifications expiring within the next 60 days. - Finding the prior value before a business process event: When a business process event updates
a worker's compensation or organization, the event's effective or entry timestamp marks the new
state. By passing the event timestamp into Increment or Decrement Date with Milliseconds to
Add or Subtract set to
-1(a negative Numeric Constant), and then feeding that decremented timestamp into Lookup Value as of Date, you can retrieve the exact value that was in effect 1 millisecond before the transaction ran.
3. Build Date and Format Date: assembling and formatting dates
When you need to normalize a date to the first of the month or format a date into a string for grouping or integration exports, pair Build Date and Format Date.
Constructing first-of-month dates with Build Date
To convert any employee's Hire Date (such as 2006-02-17) into the first day of their hire month
(2006-02-01) on the Worker business object:
- Select Build Date as the Function and Date as the Field Type.
- Set Extract Year from Date Field to Hire Date.
- Set Extract Month from Date Field to Hire Date.
- Set Specific Day to
1. - Check Return Blank Date on Error.
When building time fields (Time or DateTimeZone), enter Specific Hour values on a
24-hour clock (0 to 23), which Workday displays in 12-hour AM/PM format. Note that if you
enter 0 for Specific Second, Workday automatically changes 0 to None of the above upon
saving, which does not affect report output.
Avoiding the YYYY vs. yyyy week-year trap in Format Date
The Format Date function extracts date parts or applies a custom Format Mask (such as
yyyy-MM-dd) and outputs a text string.
Pay strict attention to case sensitivity in Format Mask:
yyyy(lowercase) is the calendar year.YYYY(uppercase) is the ISO week year, which Workday defines as starting on the week that contains the year's first Thursday.
If you use YYYY-MM-dd on a calendar date during the final week of December, Workday can advance
the year by one. For example, because Thursday, January 1, 2026 falls in the week beginning Sunday,
December 28, 2025, formatting December 29, 2025 with YYYY-MM-dd outputs 2026-12-29! Always use
lowercase yyyy unless you are explicitly formatting ISO week dates (such as 2026-W01-1).
4. Lookup Value as of Date: Effective Date vs. Entry Date
When combining date calculations with historical lookups, Lookup Value as of Date requires two date concepts on effective-dated business objects:
- Effective Date: Returns the value that was in effect on that calendar date, ignoring changes effective after that date. (If you select a Source Field on a business object that does not support effective dating—or on a custom object, which stores only current values—Workday ignores the Effective Date and returns the current value.)
- Entry Date: Filters by when the transaction was actually keyed or loaded into Workday. If you
pass a date-only field (such as Today) into Entry Date without a time component, Workday
evaluates the entry cutoff at
00:00:00(midnight at the start of that day), which will exclude transactions entered later that same day unless you supply a Date/Time value.
How kiweely fits
Chaining Numeric Constant, Increment or Decrement Date, Lookup Value as of Date, and Date Difference across related business objects is error-prone when done manually by trial and error. Kiweely inspects your tenant's business object metadata, verifies whether source fields are date-effective or include time components, and builds complete, dependency-ordered calculated field definitions ready for your tenant. Kiweely Personal is free for your Workday personal developer account and its tenant. Any other tenant needs a Personal licence, $99 a month, or a seat in your firm.
Frequently asked questions
Why does my Format Date calculated field show next year's number for late December dates?
Your Format Mask uses uppercase YYYY instead of lowercase yyyy. In Workday, YYYY
represents the week year (which starts at the beginning of the week containing January's first
Thursday), causing dates like December 29, 2025 to format as 2026-12-29. Change the mask to
lowercase yyyy to output the standard calendar year.
Why are Hours, Minutes, Seconds, and Milliseconds missing in my Increment or Decrement Date field?
Workday only displays the Hours, Minutes, Seconds, and Milliseconds to Add or Subtract prompts when the field selected in Date Field is a Date/Time field that captures time data. If you select a calendar-date-only field (like Hire Date), only Years, Months, and Days to Add or Subtract are available.
How do I stop Date Difference from rounding 1.9 years down to 1 year?
Date Difference always rounds down to the nearest whole integer in the unit you select. If you
need decimal precision (for example, 1.92 years of service), configure Date Difference to
compute the difference in Days, and then wrap that field in an Arithmetic Calculation
calculated field that divides the day count by 365 (or 365.25).