This inefficiency occurs when a DynamoDB table is no longer accessed by any active workload but continues to accumulate storage charges. These tables often remain after a project ends, a feature is retired, or data is migrated elsewhere. Without any read or write activity, the table provides no functional value and becomes a cost liability.
DynamoDB charges for data storage (per GB-month) and for read/write activity (either per request or via provisioned capacity). Tables incur storage charges continuously, regardless of usage.
Delete the table if it’s no longer needed. If data retention is required, export the table contents (e.g., to S3) before deletion. Use lifecycle tagging or ownership metadata to track tables going forward and avoid orphaned storage. For tables that may become inactive again in the future, consider archiving the data or restructuring workflows to avoid indefinite retention.