As someone from the US, I would say that it depends on the type of person who is being asked this question. For instance, as someone who has traveled a bit, I would never say that I am from America. I think this is a dated term (albeit there are many "Americans" that would disagree) as "America" encompasses many different countries technically speaking (North America - Mexico, US, Canada, even all the countries which we refer to as being a part of Central America, etc. & then of course there is South America - Columbia, Brazil, Ecuador, Bolivia, Argentina, etc).
I would say I am from "the states", the "United States", or the "US" and I don't think there is a reason for my choosing any one of these specifically (apart from the reason I gave above which is what I do not choose).
Lastly, it does too depend on what language I am speaking because for example in Spanish there is a noun to describe one's nationality that we don't have in english which is "estadounidense". In american english (and in much of the english speaking word) this doesn't exist. All we have is "American" which I'll only use if I have to. Otherwise, I'd say "I am a United States citizen".
Best,
Luke