Don’t delete accounts in bulk before checking what you would lose with them. “Old account” can still mean receipts, warranty records, software licenses, gift-card balances, tax documents, order tracking, or proof that you canceled something. Nothing improves a cleanup project quite like deleting the only receipt for an appliance that breaks next month.
That is where manual work beats a cleanup service. A service can identify sites and fire off standard requests, but it cannot reliably decide which records you should save first. For each account, I’d quickly check for purchases, active subscriptions, stored credit, downloadable files, and linked payment methods. Export anything worth keeping, remove payment information where possible, then request deletion. Treat financial, cloud-storage, medical, government, and paid-software accounts as manual-only.
For the rest, use a strict time budget. If deletion takes two minutes, do it. If it requires a support exchange, send one clear request and move on while waiting. If a site wants a scan of your ID to delete an account that contains nothing beyond an old username, I would seriously question whether handing it more sensitive data counts as progress. Mark it unresolved, change the password to a unique random one if login still works, remove personal details, and revoke any connected sign-in permissions.
A cleanup service might be worthwhile for finding forgotten subscriptions or reducing mailing-list noise, but I would not give one unrestricted inbox access just to save some clicking. With 347 known logins, you have already completed the discovery step that such services are best at. The remaining work is judgment, document recovery, and awkward support conversations, which are exactly the parts automation tends to handle badly.