You may be able to get what you want without actually deleting entries. You can add a calculated column to the table to indicate whether the record is valid.
IsValid as (case when getdate() - CreatedAt > 1 then 0 else 1 end)
You can also do this for key fields in a record, so you cannot find them:
_name varchar(255), name as (case when getdate() - CreatedAt < 1 then _name end)
Then you can use the view to access the table:
create vw_Logins as select name, . . . from t where isValid = 1;
Then, in your free time, you can delete the rows if you need for performance reasons.
EDIT:
In fact, you don't need a computed column if you express an opinion like:
create vw_Logins as select name, . . . from t where getdate() - CreatedAt < 1;
source share