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.
"It's inexcusable for scientists to torture animals; let them make their experiments on journalists and politicians." -Henrik Ibsen