Mathematically 18 is fine until level 12. You'll be playing for a long time between those levels. Get the feat you'll have lots of fun using. At level 12 evaluate how things have been going. If you've been making your spell attack rolls and monsters have been failing saving throws a personal subjective reasonable amount, then another feat is fine. If you just feel it you need more oomph go to 20. If other party members are at 20 in their prime, you'll likely want the 20 to be in the club. At level 16 get the 20 definitely if you haven't already. If you know the campaign will end before or at level 16 that could influence your decision. You'll have to figure it out yourself based on what's going on in the game and your mood. Getting the 20 at level 12 is fine, but the feat might be important enough too. You don't lose out either way.

If you want the 20 at level 8 by all means take it. It is a fun effective boost in its own right. You can be worry free not taking the 20 won't hurt you, so take the opportunity to choose what's fun for you even if it is getting the 20.