Auto Delete Submissions

WS Form can automatically remove saved submissions after a specified number of days. You can choose to move expired submissions to trash, where they can be restored, or permanently delete them.

This is useful when you only need to retain submission data for a limited period, such as when implementing a data retention policy or GDPR-style cleanup.

Requirements

The Save Submission action must be present and enabled on the form.

If the Save Submission action is disabled or removed, submissions will not be saved and the auto delete feature cannot be applied to new submissions.

How to Enable Auto Delete Submissions

  1. Edit the form in WS Form.
  2. Open the Actions sidebar.
  3. Select the Save Submission action.
  4. Find Auto Delete Submissions.
  5. Choose Move to Trash or Permanently Delete.
  6. Enter the retention period in Delete After (Days).
  7. Save or publish the form.

The default value for Delete After (Days) is 90 days. The minimum value is 1 day.

Auto Delete Submissions Options

Off

Select Off to disable auto deletion for new submissions. New submissions will not be given an expiry date.

Turning this setting off does not immediately remove expiry dates that have already been assigned to existing submissions.

Move to Trash

Select Move to Trash to move expired submissions to trash after the number of days specified in Delete After (Days).

This is the safer option if you may need to recover a submission later. Trashed submissions can be restored from the submissions Trash view.

Permanently Delete

Select Permanently Delete to permanently remove expired submissions after the number of days specified in Delete After (Days).

Permanent deletion cannot be undone. Related submission data, such as notes, meta data, and uploaded files, is also removed.

This option can be useful when implementing a retention policy or GDPR-style data cleanup where submission data should not be retained beyond a specified period. Choose it carefully because deleted submissions cannot be restored.

Delete After (Days)

Delete After (Days) determines how many days a submission is retained before it is moved to trash or permanently deleted.

The default is 90 days, and the minimum is 1 day.

For example, setting this to 30 means a new submission will be assigned an expiry date 30 days after it is created.

What Happens After Setup?

When a submission is saved, WS Form stores an expiry date based on the current Delete After (Days) value.

WS Form then uses WordPress scheduled events, known as WP-Cron, to check for expired submissions. The scheduled check runs hourly.

Processing may not happen at the exact moment a submission expires. With the default WordPress WP-Cron system, scheduled events are triggered by visits to the site. On a low-traffic site, an expired submission may therefore remain for longer before it is processed.

Existing submissions that have already been assigned an expiry date keep that date if you later change the Delete After (Days) setting.

When an expired submission is processed, WS Form uses the form’s current Auto Delete Submissions setting to determine how it should be handled.

Restoring Trashed Submissions

If you select Move to Trash, expired submissions are moved to the submissions Trash view. They can be restored if you need them again.

If you select Permanently Delete, the submission and its related data are removed permanently. There is no restore option within WS Form.

If you are unsure whether submission data might be needed later, Move to Trash provides a recoverable option.

Troubleshooting

Submissions Are Not Being Automatically Deleted or Moved to Trash

Check the following:

  • The Save Submission action exists on the form and is not disabled.
  • Auto Delete Submissions is set to Move to Trash or Permanently Delete, not Off.
  • Delete After (Days) is set.
  • Enough days have passed since the submission was created.
  • You have allowed time for the scheduled check to run.

WS Form checks for expired submissions about once per hour. Processing is not instant.

WordPress WP-Cron is triggered by site visits by default. A site receiving little or no traffic may experience delays.

WP-Cron Is Not Running

WordPress uses WP-Cron to run scheduled tasks. Unlike a traditional server cron service, the default WP-Cron system is normally triggered when someone visits the site.

On sites with little or no traffic, scheduled tasks may therefore run late.

You can use a WP-Cron management plugin such as WP Crontrol to check whether the following scheduled event is present:

ws_form_wp_cron_action_database

If WP-Cron has been disabled, check wp-config.php for:

define( 'DISABLE_WP_CRON', true );

When DISABLE_WP_CRON is enabled, the built-in WP-Cron system will not be triggered by site visits. This configuration usually requires a server cron job that requests wp-cron.php on a regular schedule.

A server-level cron job is also a more reliable option for sites where scheduled tasks need to run consistently.

Caching and CDN configurations can sometimes prevent WP-Cron from being triggered if requests do not reach WordPress. If scheduled events are consistently delayed or not running, check your caching, CDN, and hosting configuration.

Your hosting provider can usually help confirm whether WP-Cron is running correctly and configure a real server cron if required.

Submissions Are Being Trashed Instead of Permanently Deleted

If submissions are being moved to trash when you expected them to be permanently deleted, or permanently deleted when you expected them to be moved to trash, check the form’s current setting.

WS Form uses the form’s current Auto Delete Submissions setting when the scheduled task processes an expired submission.

Edit the form, open the Save Submission action, and check the current Auto Delete Submissions setting. Make sure you save or publish the form after making changes.

I Turned Auto Delete Off but Older Submissions Still Disappeared

Turning Auto Delete Submissions to Off prevents new submissions from being assigned an expiry date.

It does not immediately clear expiry dates that were previously assigned to existing submissions. An older submission that already has an expiry date may therefore still be processed when the scheduled task runs.

Frequently Asked Questions

What Is the Default Retention Period?

The default Delete After (Days) value is 90 days.

What Is the Minimum Retention Period?

The minimum value is 1 day.

Can I Restore an Automatically Deleted Submission?

If Move to Trash was selected, you can restore the submission from the submissions Trash view.

If Permanently Delete was selected, the submission cannot be restored.

Does Changing Delete After (Days) Update Existing Expiry Dates?

No. Submissions that have already been assigned an expiry date keep that date. The new value is used when assigning expiry dates to new submissions.

Does Auto Delete Run at the Exact Time a Submission Expires?

No. WS Form checks for expired submissions using an hourly WordPress scheduled event. The exact processing time can vary, particularly when the default visit-triggered WP-Cron system is used on a low-traffic site.

Should I Use Move to Trash or Permanently Delete?

Use Move to Trash if you want the ability to recover expired submissions.

Use Permanently Delete when the data should be removed completely after your chosen retention period. This can be useful for retention or GDPR-style cleanup policies, but permanent deletion cannot be undone.