Often enough to catch a change before it costs you, which in practice means nobody does it manually. The honest version of this answer is that intentions do not survive contact with a busy quarter.
What would need checking, and how often
- Domain expiry — monthly is enough, since the window is long
- Certificate expiry — weekly, because the cycle is now around ninety days and automated renewals fail silently
- Mail authentication — after every DNS change, which is the moment it usually breaks
- Subdomains — whenever a hosted service is cancelled, which is exactly when nobody thinks of it
The pattern in that list
Three of the four are triggered by events rather than schedules, and the events are ones nobody records. That is why a calendar reminder does not solve this, and why the failures cluster around staff changes and supplier changes rather than around neglect.
A reasonable manual routine
If you are going to do it by hand: run a full check quarterly, and again after any DNS change, any hosting migration, and any time somebody leaves who had access to any of it.
This is the short version. The full guide covers it properly: read more.