Campaign Length: How to divide and spread the level progression throughout the story.

I’ve DM’d a couple of smaller modules with my close friends (Lost Mine of Phandelver and Sunless Citadel), and now I’m looking to create my own homebrew campaign.

My ultimate goal is to run one of those epic campaigns you always read about on Reddit, spanning years and taking players from level 1 to 20. I’d love some advice from those of you who have managed to structure and pace such long-running campaigns.

How do you typically organize your campaign? Do you have the acts/chapters planned out ahead of time, or do you prefer to let things evolve based on what the players do, while sticking to a core story concept?

Also, as I mentioned, I’ve only run smaller modules so far. For example, in LMOP, the players usually level up after each chapter. I’m wondering how best to spread out level progression for a longer campaign. I use milestones (as recommended by LMOP) instead of XP, but I don’t think that one level per chapter is a good ratio for a multi-year campaign—it feels too fast.

If anyone has any tips on how you like to structure your campaigns, or how you handle level progression for a story that’s meant to run for years, I’d really appreciate it!

Thanks in advance!