Use this article to understand how Intercom handles dates — both how to send date attributes from your own system, and how dates are displayed in your workspace.
There are many different reasons to track dates in Intercom. Intercom already tracks some dates by default, such as when your users sign up, or are first seen on your website. Read more about the data that Intercom automatically tracks here.
Note: The first section of this article (sending date attributes) is intended for developers or technically-minded teammates setting up Intercom. The second section (what dates you see in the app) applies to all teammates.
You can also send Intercom dates as custom user attributes. For example, you could track the date that a user subscribed to one of your products, or the date they cancelled their subscription.
Once you’re sending these date attributes to Intercom, you could send an Proactive Support Message to users who cancelled a week ago, or send a Product Tour to newly subscribed users to assist with their onboarding.
Tracking date attributes in Intercom
There are two ways to track date attributes in Intercom about your users:
1. If you create a custom attribute name that ends with “_at” we'll automatically treat it as a date rather than a number (see "last_order_at" below).
window.intercomSettings = {
email: "bob@example.com",
user_id: "123",
app_id: "abc1234",
"last_order_at" : 1350466020, // Send dates in unix timestamp format and end key names with "_at"
}
2. Alternatively, you can create date attributes from Settings > Data > People in your workspace.
Choose the Date format when creating these attributes. When you start sending Intercom data for these attributes, make sure to either send the dates as a Unix timestamp (an integer representing the number of seconds elapsed since January 1st, 1970 UTC — seconds only, not milliseconds) or in a DD/MM/YYYY format.
We recommend that you do not allow attribute updates or creation via the Messenger as this can be a security risk. Learn more here.
What is a Unix timestamp and why is it needed?
Date attributes should ideally be sent to Intercom as a Unix timestamp. A Unix timestamp is an integer representing the number of seconds elapsed since January 1st, 1970 UTC — for example, 1350466020 represents October 17th, 2012 at 12:27 PM UTC. Every programming language has ways to calculate these timestamps. Intercom only accepts timestamps in seconds — milliseconds are rejected. Intercom will also accept ISO 8601 formatted timestamps (for example, 2012-10-17T12:27:00Z) if generating a Unix timestamp is not possible.
Unix timestamps are always the preferred format for date attributes in Intercom, as they provide a specific point in time, so they can be translated across timezones. If you don't know or can't generate the exact timestamp, you can also send Intercom date attributes in DD/MM/YYYY format. Then, filters such as “Signed up more than 30 days ago” will still work correctly - if not quite as specifically - for Proactive Support Messages, Workflows and more.
How are dates displayed in the Intercom app?
Most dates in the Intercom UI are displayed in your browser's local timezone, so what you see may differ from a teammate in a different timezone. For example, a conversation timestamp shown as May 4th for you may appear as May 3rd for a teammate whose browser is set to an earlier timezone.
For example, the date a user was first seen, displayed in the viewer's local timezone:
Or the timestamp shown when hovering over the channel icon in the Inbox:
Your workspace's timezone is used separately for things like scheduling messages and defining office hours. If you and a teammate in a different timezone see different date displays for the same user record or conversation, this is expected — your browsers are in different timezones.
Need more help? Get support from our Community Forum
Find answers and get help from Intercom Support and Community Experts




