I think it largely boils down to preference, and the requirements of the game. Is your GM super-experienced? You probably don't need spell descriptions in there. Do you have some new players as team-mates? Leave out the description but throw a link to the Compendium at the end, so they can click it if they want, but you're not spamming chat with descriptions the rest of the players don't need.
I don't think there's really a one-size-fits-all approach either by spell or by person, or by campaign for that matter. Some spells are creative and really need the description, flat-out combat spells not so much.
Personally, I'm not a fan of the default Higher Level Cast frame, particularly with healing spells as the other players often seem to miss it.
So a basic fireball, I would disable the default higher level cast in the spell settings, and change the DAMAGE field to this:
8d6[BASE] + ?{Cast at what level?|Level 3,0|Level 4,1|Level 5,2|Level 6,3|Level 7,4|Level 8,5|Level 9,6}d6[UPCAST]
But what if you're a Sorcerer with Empowered Spell metamagic? Maybe you'd want this, so all your low rolls are sorted even when upcast:
[[ 8 + ?{Cast at what level?|Level 3,0|Level 4,1|Level 5,2|Level 6,3|Level 7,4|Level 8,5|Level 9,6}]]d6sd
You can trim the Query right down, too, so it's just integer entry and uses the number entered. It doesn't look as nice, and players can try casting above level 9, but simplifies your code a lot:
[[ ?{Spell slot?|3} +5]]d6
And if you wanted a link for new players to look up the spell, you could throw this in the description field and set the spell to show description:
[Compendium Entry](https://app.roll20.net/compendium/dnd5e/Fireball#content)
You also have the DAMAGE 2 field to play around with, which you can use for upcasting if you prefer. So you could leave the base damage alone as 8d6, and add the query to Damage 2.
I've also been toying with the idea of doing away with Crit fields altogether. 5E has the capability to detect a crit attack roll and links to a different damage macro when this happens. In this case, the extra crit dice may as well be totaled with the regular damage dice, with the Normal/Crit breakdown available on mouseover.
So many options! I'd recommend you play around with a spell and see what output you prefer. Some of the drag & drop versions are less than ideal (e.g. Vicious Mockery doesn't show the save DC which is annoying for a GM, conditional spells don't have the conditional damage coded at all) so it's really a case of fixing spells as players select them IMO. Remember there's no easy way to copy a spell in full - you can make a character sheet with modified versions & give players permission, but they have to copy & paste each field onto their own sheet. A PC with every spell in the game on their sheet would also (I'm led to believe, never tried it) cause some significant slowdown on the VTT.
Note that I'm a scrubby Plus subscriber and don't use Spell Slot tracking - I'm not sure how to make the API pick up higher level casting with custom code. Presumably it's scanning the chat log for a certain string, but not really sure.
My preference is definitely making the important information available in a concise manner, with all required information available on mouseover. You need to be able to spot during play if any of your coding has gone awry and gives the wrong results.
I'd be interested to see what other people do with their spells, always ready to steal other people's good ideas!