Skip to page contentSkip to chat
ServiceNow support
    • Community
      Ask questions, give advice, and connect with fellow ServiceNow professionals.
      Developer
      Build, test, and deploy applications
      Documentation
      Find detailed information about ServiceNow products, apps, features, and releases.
      Impact
      Accelerate ROI and amplify your expertise.
      Learning
      Build skills with instructor-led and online training.
      Partner
      Grow your business with promotions, news, and marketing tools
      ServiceNow
      Learn about ServiceNow products & solutions.
      Store
      Download certified apps and integrations that complement ServiceNow.
      Support
      Manage your instances, access self-help, and get technical support.
After updating a record, some date/time fields are set to 1969-12-31 - Support and Troubleshooting
  • >
  • Knowledge Base
  • >
  • Support and Troubleshooting (Knowledge Base)
  • >
  • After updating a record, some date/time fields are set to 1969-12-31
KB0549867

After updating a record, some date/time fields are set to 1969-12-31


3431 Views Last updated : Jun 2, 2025 public Copy Permalink
KB Summary by Now Assist

Issue

After updating a record, one or more date/time fields display the value 1969-12-31, which may seem unexpected or incorrect.

Symptoms

  • A date/time field (e.g., time_worked, start_date, end_date) displays 1969-12-31 or a similar time-stamped value.
  • The behavior often occurs when setting a date/time field to empty (null) through a script or update.
  • In certain time zones, the displayed value includes a time offset (e.g., 1969-12-31 19:00:00).

Release

All Supported Releases

All modules using date/time fields

Cause

This behavior stems from how date/time fields are stored and interpreted internally in ServiceNow:

Date/time fields are stored as the number of milliseconds since 1970-01-01 00:00:00 GMT, also known as the Unix epoch.

If a field is null and not explicitly cleared or properly initialized, the system may interpret it as zero milliseconds.

Zero milliseconds = 1970-01-01 00:00:00 GMT.

Time zone adjustment:
If your user profile is in a negative GMT offset (e.g., Eastern Time), the system adjusts the displayed value by subtracting the time zone offset, resulting in a display of 1969-12-31.

  • Client Script Behavior
    A client script sets a date/time field to empty on mobile/tablet, and it displays as 1969-12-31 19:00:00.
  • Null Date Initialization
    A GlideRecord update leaves a date field null, and the system renders it as the Unix epoch in the user’s timezone.

Resolution

  

To prevent this behavior:

  • Always explicitly handle date/time fields when updating records:
    • Use field.setDisplayValue('') for clearing via GlideForm.
    • Use field = null or field = '' appropriately on the server side depending on context.
  • Avoid leaving date/time fields unintentionally null if you expect them to be unset without showing the epoch date.
  • Consider adding validations or default values where necessary to prevent zero-millisecond interpretations.

Related Links

  • Client Script: Setting a Date/Time field to empty returns 1969-12-31 19:00:00
  • Rendering issues when time_worked is set to less than epoch date

The world works with ServiceNow.

Sign in for more! There's more content available only to authenticated users Sign in for more!
Did this KB article help you?
Did this KB article help you?

How would you rate your Now Support digital experience?

*

Very unsatisfied

Unsatisfied

Neutral

Satisfied

Very satisfied

Very unsatisfied

Unsatisfied

Neutral

Satisfied

Very satisfied

What can we improve? Please select all that apply.

What are we doing well? Please select all that apply.

Tell us more

*

Do you expect a response from this feedback?

  • Terms and conditions
  • Privacy statement
  • GDPR
  • Cookie policy
  • © 2025 ServiceNow. All rights reserved.