I would just like to say that while, yes all of the cons mentioned above exist, that doesn't mean it's not possible, or workable... I mean, there are overheads associated with sprite_add() but they may be acceptable to your game! My latest game "Microscope Madness" has a massive amount of texture swaps due to the way I process graphics, yet I still consistently get 500-600 fps on MOBILE, and it also has 7 2048x2048 texture pages to swap between... but do I care? Nope. The game works and looks great!
So, yeah, sprite_add can be resource heavy, but if the game works fine using it and gives you no problems, then what's the issue??? People get so hung up on "performance" and micro-optimisations, that they often discard solutions that will actually work fine within the scope of the game being made.
My suggestion... Try it and see!