Best way to clean up ServiceNow Data
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-01-2025 06:52 AM
Hello everyone,
We are in the process of cleaning up data from multiple tables in our ServiceNow instance, which has been in use for over a decade and supports a wide variety of activities.
As part of this effort, we’re working to identify the data sets that can be safely deleted. I'm looking to better understand the available options for data cleanup and the recommended use cases for each approach.
Specifically, I would like to know the differences, advantages, and best use cases for the following methods:
Data Management
Table Cleaner
System Archive
If anyone has experience or best practices to share regarding these tools—or any other suggestions for large-scale data cleanup—I would greatly appreciate your input.
Thank you!
- Labels:
-
Architect
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-01-2025 07:01 AM
Hi @vimal11592 ,
if you are looking to delete the data you can use the Table Cleaner (you delete related records with cascade delete)
data management delete job is also is fine with this you can rollback the content
With system archival system store the data in the related archive table and you have to setup a destroy rule to delete the data ( useful when you want to still store the data and improve your system performance when users are querying the table as now the table contains less no of records to fetch and query from)
Please mark my answer as helpful/correct if it resolves your query.
Regards,
Chaitanya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-01-2025 07:05 AM
Hi @vimal11592 ,
here is structural version of my answer
Table Cleaner
- Use this when you want to permanently delete records from a table.
- It supports cascade delete, so related records in child tables can also be removed automatically.
- Best for cleaning up old logs or transactional data that no longer needs to be retained.
Data Management → Delete Job
- This is also a good option for deleting data.
- The advantage here is that you can preview and rollback the deletion if needed (as long as rollback is enabled).
- Useful when you want more control over what gets deleted and when.
System Archiving
- This moves data to a related archive table instead of deleting it.
- You can later configure a destroy rule to permanently delete the archived data.
- Ideal when you want to retain historical data but improve performance by reducing the number of records in the main table.
Please mark my answer as helpful/correct if it resolves your query.
Regards,
Chaitanya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-01-2025 07:55 AM
Hi @vimal11592 ,
** Table Cleaner (Auto Flush) automatically deletes old records in small batches based on date fields and conditions—ideal for ongoing maintenance, but skips rotated or extended tables and halts long-running queries early.
** System Archive / Archive & Destroy rules move inactive records into flattened archive tables before permanently deleting them, suited for retaining historical data safely while managing table size.
** Data Management policies provide a unified approach to define rules for archiving and deleting data per table, with built-in visual monitoring, best for structured lifecycle management across large and critical data sets.
Kaushal Kumar Jha - ServiceNow Consultant - Lets connect on Linkedin: https://www.linkedin.com/in/kaushalkrjha/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-04-2025 02:08 AM
Hi @kaushal_snow @Chaitanya ILCR ,
Thank you for the responses — I really appreciate it. I just want to confirm a few things. From what I understand, the Table Cleaner deletes records in batches of 10,000 per hour, which seems like a safe and performance-friendly option. However, I’m not entirely sure how Data Management handles record removal in the backend, and I’m curious about the potential performance implications of that approach.
Thanks,
Vimal