This is why the need arose for talking about "orders of magnitude". If you use base 10, the order is 3, which is generally considered as a large difference.
For a related reason you need "big oh" notation for computing speeds. But in that case the magnitude difference over larger numbers is what you are interested in. The difference between O(n) and O(n^2) can grow to an arbitrary magnitude difference. If you want a difference of 1000, then take n = 1000, and you get O(n|n = 1000) = 1000 and O(n^2|n=1000) = 1 000 000. But if you take n = 1 000 000, the ratio is now 1 000 000 = 1 000 000 / 1 000 000 000 000. So, a badly written sort function can get pretty bad with large arrays.
Anyway, the latter is just tangential to show that indeed as you say, context is important (abundance and total need for a resource) and factors vs. growth-in-factors over large numbers are different. Resources scale linearly to use in product output, however, so the "big oh" (counter-)analogy is just for the sake of interest.