When you save custom events in Iterable, you're tracking information about important moments in your users' journey with your brand. Custom events enrich user profiles in your Iterable projects, and you can use them to personalize the messages that you send.
For example, you might create custom events when users sign up for accounts, which triggers a journey that sends a welcome message to your new users.
Whenever these events are tracked, they're stored in your account indefinitely by default. While it can sometimes be useful to save data, this poses a challenge for data hygiene. Over time, you may be holding on to information that you'll never use, which can obscure the important data that your team needs for your marketing efforts. Further, as event data aggregates, a high volume of data can impact the timely performance of dynamic lists and journeys.
As a solution, you can set a retention period for your custom events that dictates how long Iterable stores event data before it is deleted from your project. When you do this, Iterable will automatically delete events that age out of their retention periods.
DANGER
Data is permanently deleted when you set a retention period for an event.
Changes to an event's retention policy are applied immediately. Some of your project's saved events will be scheduled for deletion right away.
This means that if you set an event's retention policy to 30 days, existing events older than 30 days will be automatically scheduled for deletion. Even if you immediately change it to 90 days, events older than 30 days may still be deleted.
We cannot stop or prevent this deletion, so it's important to know how long you need to save data before you make changes.
In this article
- Deciding how long to store event data
- How retention works
- Setting custom event retention periods
-
Frequently asked questions
- What is the default retention period?
- Are there downstream effects of custom event deletion?
- How do I know when an event deletion is happening? Or which events will be deleted?
- How precise are retention periods? When (and how often) are events deleted?
- I set a retention policy yesterday, why hasn't the volume changed?
- When events are deleted, does it impact the event definitions in my project settings?
- Is there a way to undo event deletion?
Deciding how long to store event data
You can choose to store event data for as little as 30 days and as long as 10 years. You can also keep it for an unlimited period (no deletion).
Before you set a retention period for an event, make sure to:
-
Check your project for lists and journeys that reference custom events, and take note of the timeline from when the event occurs to when your project references it in a list or journey. This can help guide how long you need to keep the event data in a user's history.
Example: If you have a journey that uses a custom event in a Yes/no split when the event occurred with a relative date of 60 days ago, then you must retain that event data for at least 61 days for your journey to flow as expected.
Use the date picker in the Settings > Data Schema Management page to estimate the count of events that will be deleted if you set the policy.
Discuss data needs with your marketing team and other stakeholders.
Consider using Iterable's API to back up data on a schedule before it is permanently deleted.
Reviewing all of ths information will help you find a retention period that makes sense for each custom event you track.
How retention works
As soon as you set a retention policy, events will be immediately scheduled for deletion and cannot be removed from the deletion queue. If this is your first time setting a retention period for an event, we suggest that you err on the side of caution and start with a longer retention period. Setting an overzealous retention policy can result in losing valuable data that cannot be restored.
For example, if you have a custom event called createdAccount and you set a new retention period of 30 days, all events that are older than 30 days will immediately be scheduled for deletion. If you later find out that your project has a journey that uses the event with a relative date of 60 days ago to send a follow-up promotion. Because you already set a 30-day retention period, the events older than 30 days will be deleted and you will not be able to restore event data necessary for users to progress in the journey.
DANGER
Making changes to a retention period after a period has been set does not restore data that was deleted, nor does it prevent deletion of data that is already scheduled to be deleted.
Setting custom event retention periods
Users who have the Manage Settings project permission can view the Data Schema Management screen and edit retention periods.
Go to Settings > Data Schema Management to see a list of the custom
events. You'll also see the volume stored for each kind (where volume is the
count of events tracked in the timeframe selected that are stored in your
account).
For each kind of event, the Retention period column indicates how long your project will save individual event instances before deleting them.
Single event
To set the retention period for a custom event:
Click the overflow menu (three dots) on the right-hand side of its row and select Update retention period.
In the Update event retention period window, choose one of the following options: Unlimited (default), 180 days, 1 year, 2 years, Other (specify a custom period from a minimum of 30 days to a maximum of 10 years).
-
When you are done, click Save.
Bulk update events
To set the retention period for multiple events at once:
On the Settings > Data Schema Management page, use the checkboxes on the far left to select each event you want to update. You can also use the drop-down at the top to select all (or none).
Once you have selected the events you want to bulk update, the Edit retention policy button will appear. Click here to select a new retention period that will apply to all of the custom events that you have selected.
-
When you are done, click Save.
Frequently asked questions
What is the default retention period?
The default retention period is unlimited (no deletion). This applies whenever you define a new custom event in project settings, or if your project receives (via an API call) and saves a never-before-seen kind of custom event. The retention period will continue to be unlimited until you change it.
Are there downstream effects of custom event deletion?
When you delete a custom event:
If a journey uses a filter that looks for a particular custom event, and a visitor to that journey has that event deleted from their profile (even while they are already in the journey), it may affect their path through the journey.
If your project associates a particular kind of event with historical conversions, deleting instances of that event can change your conversion metrics.
How do I know when an event deletion is happening? Or which events will be deleted?
Currently, there's no way to see when a deletion is taking place or if a particular event is in the deletion queue.
How precise are retention periods? When (and how often) are events deleted?
Event deletions run periodically, not in real-time. Events will not be deleted before their retention period is up (unless they were already scheduled for deletion by a previous, more restrictive retention period), but they are not always deleted at the precise moment that their retention period expires. However, you should assume that they will be; there is no guarantee that an event will be stored for any time beyond its retention period.
I set a retention policy yesterday, why hasn't the volume changed?
Deletions are processed in batches, so events are not always immediately deleted when you expect them to be. Deleting a high volume of events requires a significant computing load. It may take several days for your event volume to reduce.
If you recently set a large volume of events to be deleted but your custom event storage has not yet changed significantly, we recommend checking back a few days later.
When events are deleted, does it impact the event definitions in my project settings?
No, deleting events does not change or remove event definitions in project settings. It just removes saved instances of those events.
Is there a way to undo event deletion?
No, there is no way to undo event deletion. Deleted data cannot be recovered.
Once an event has been scheduled for deletion, there is no way to prevent the deletion from happening. This can happen immediately when you change a retention period.
WARNING
Use caution when setting retention periods, so that you don't delete custom event data that you (or someone on your team) might need.