Yup, let me give some feedback.
We are using WordPress transients to store the cached head tags. They are configured to last up to 30 days, but transients are only removed from the DB when they are requested again after expired so I completely understand your problem, @koli14.
A possible solution would be to implement our own system to remove automatically all expired transients created by the Head Tags plugin. Also, we could add an option in the admin panel to change the default expiration time (currently is 30 days).
@koli14, in the meantime, there are some plugins that remove expired transients automatically (like Delete Expired Transients) but, yeah, it totally makes sense to add an auto-clean cache feature for the REST API - Head Tags plugin so it doesn’t depend on third-party plugins.