In most cases, the answer is yes. However, as with any other business expense, you need a return on investment that makes sense. You've got to get back more than you put in. So, a better question might be how much are SEO services worth.
To answer that you need to look at your numbers. The first number that matters is your current cost per lead. If you know your cost per lead you've got a good starting point. Without that, there's really no way to answer the question.
You see, SEO is really just about visibility. Specifically your website's visibility in the search engines. If increasing your visibility helps you generate more leads, all you need to do is compare your current cost per lead with your new cost per lead after applying SEO. There are clearly a bunch of variables mixed into that calculation including your actual SEO costs.
If you have time to learn SEO for yourself, your costs will be much lower than if you hired an SEO professional. Your results will most likely be lower as well, but at the end of the day your numbers will let you know if SEO is worth paying for.