# Retention periods

How long your app keeps deleted records is an ordinary setting, such as
`soft_delete_retention: Duration`. A lifecycle reads it as
`purge: { after: config.soft_delete_retention }`
([Lifecycle](lifecycle.md)). `after:` takes a `Duration` setting that
isn't secret (`data.lifecycle_purge_after` otherwise). A purge run uses the
value the app started with, and a period that isn't above zero deletes
nothing. How retention fits the wider support for personal data, such as
marking personal fields, erasure and export, is in
[Personal data](personal-data.md).
