The test of an account structure is not how it performs this month. It is whether someone can open it in a year, look at the campaign list, and immediately know which lever to pull. Most accounts fail that test badly. I have opened accounts with forty campaigns, half of them paused, named things like Search 2 Copy Final, where nobody living could explain what any of them were for.
Automated bidding took most of the old reasons for granular structure away. You no longer need one keyword per ad group to control bids. The system does not need your help splitting traffic by device or hour of day, and in most accounts it does that better than a human would.
What structure is still for is answering questions. Every boundary you draw in the account is a line in a future report. If you want to know whether roofing repair is more profitable than roofing replacement, those need to be separate campaigns. If you never need to know, do not split them. Structure exists so that spend can be attributed to a decision you might actually make.
The corollary is uncomfortable for people who like tidy accounts: a split you will never act on is not organization. It is fragmentation, and it costs you conversion data in every bucket you create.
These are the boundaries I keep in almost every account, in priority order.
Very small budgets should be flatter than the advice above suggests. If you spend a modest amount a month, one Search campaign for brand and one for everything else is often correct, and any further division starves the bidding.
Very large accounts go the other way. When a single product line spends serious money on its own, splitting by sub-category becomes legitimate because each piece still has plenty of signal, and someone in the business genuinely owns each budget.
Ecommerce with thousands of SKUs follows different logic again, organized around margin bands and product performance rather than around themes. The principle survives though: split where you would take a different action, not where the catalog happens to have a category page.
Open your campaign list and try to write, in one sentence per campaign, what it is for and what number would make you change it. Any campaign where you cannot do that is either misnamed or should not exist. Fix the names first, because naming is free and it makes the next problem visible. Then start merging the fragments that never earned their separation.
A structure you can read is worth more than a structure that is theoretically optimal. You will make far better decisions in an account you understand.