You should continue using string values, because attributes’ like in the name are just there to like add attributes to whatever you want to add them too like. say you have a gun and you want it to have a set amount of ammo which is a number, you can use attributes for that
Depends on what kinds of configurations you’re holding for the tool, whether or not they’re changing and your replication requirements for those values.
My choice would in fact be neither and I’d instead pitch that you should use ModuleScripts to hold large amounts of data. You can replicate data between environments as necessary since Roblox will not do that automatically for you unlike StringValues and attributes.
More of a Scripting Support kind of thing since this doesn’t have many deep implications about how you’d be designing your experience.