Expiration Did Not Run at the Scheduled Time
Check the WordPress timezone
Go to Settings → General and verify the website timezone. A timezone mismatch is a common reason a schedule appears early or late.
Check the saved expiration status
Open the item and verify that Enable expiration is active and the expected date, time, and action are saved.
Check WP-Cron
WordPress scheduled tasks need WP-Cron or a functioning server-cron replacement. If scheduled tasks across the website are delayed, the problem may be broader than Deviking Post Expiration.
Low-traffic delay
On a low-traffic site, WP-Cron may not execute at the exact scheduled second. The plugin includes a fallback sweep, but WordPress still needs to run cron events.
Test again
Create a temporary test post and schedule it a few minutes in the future. If the test also fails, investigate WordPress cron execution and server configuration.