All well and good. However there’s been a move away from XP levelling to milestone. Which changes things around dramatically. When doing SKT (for example), I swear we wandered all over the place and probably spent way more time in between milestones than if we had been following the plot more efficiently.
Instead of counting xp or milestones to reach the next level,
count the number of encounters.
For example, while level 6, I know that it will take about 15 encounters to reach level 7.
As DM, I can tweak the number of encounters at each level according to taste as well as convenience to level up between gaming sessions.
Counting
encounters is simpler, more accurate, makes it easier to count noncombat encounters, and can happen on the fly for when players go off the railroad tracks.
If an encounter requires effort to overcome, it is an "encounter". It doesnt matter if it is a combat encounter, a social encounter, or whatever. If the encounter is trivially easy it counts as half an encounter, and if a difficult one it counts as one and half encounters. (If the encounter is near-tpk, it counts as two encounters, but I encourage my players to run away from encounters that look unwinnable.)
Counting encounters is more accurate. The difficulty of the encounter is decided AFTER the encounter is over. It is all hindsight. If I build an encounter that turns out to be unexpectedly easy to overcome, then it is only worth half an encounter. (Albeit if the encounter was made easy because one of the players thought of some brilliant solution then the creativity makes it worth the full challenge, maybe more.) Sometimes, an encounter that I assumed would be easy turned out to be surprisingly difficult. Such an encounter is worth the one-and-half of a difficult encounter.
Likewise, a social challenge might turn out to be easy, normal, or difficult.
The best part of counting encounters is how easy it is on the fly. As DM, I like to intentionally mix in easy encounters and difficult encounters for the sake verisimilitude. I also add about one out of four or five impossibly-difficult encounters that the players should run away from. So basically, as DM, I just throw encounters at the players. What could be easier?! Then I track if they turned out to be standard, easy or hard.
Also nice. Players can do whatever they want. Sometimes they get into a personal project, and I need to conjure encounters out of thin air as they pursue that project. No problem. I track how many encounters happen, and whether they turned out to be easy or hard.
Counting the encounters makes life so easy for the DM, so friendly to the players, so accurate as a leveling measure, and so easy to use in any adventure scenario including roleplaying social challenges. Encounter counting should be the default official method for character advancement.
Count the number of encounters that it takes to reach the next level.