It is like everything else in business. You can afford to hire someone to do things if there is enough profit with your products or services. The same thing goes for AdWords advertising or just about anything on the web. You can't pay $20 in advertising to sell a product that has a $10 margin unless you expect a lot of repeat business.
If your margins are slim, you should be learning how to do SEO yourself.
ROI can be an elusive number for many businesses. Sometimes it is hard to tell how much new business is attributable to your SEO efforts.
"Democracy is two wolves and a lamb voting on what to have for lunch. Liberty is a well-armed lamb contesting the vote." -- Benjamin Franklin