We only store the system message id per notification, those huge html payloads are only stored once in the database and cached in memory when fetched.
They do expire, with the exception of the "Welcome to Loops" one, I set the expiry date to 2027, but we may need to reduce that
https://github.com/joinloops/loops-server/blob/main/storage/app/notifications/system.json#L20