Maybe your web site just sucks
SEO, or "Search Engine Optimization," when offered in its own, is basically a scam.
SEO is a real thing, but it is an integral part of web design, and anyone who wants to claim to be a web designer should have SEO skills as a matter of course. A person making web sites who does not understand SEO is a print designer lost on the internet. A person who makes web sites that does not understand good design is merely an HTML coder.
The SEO specialist is on especially shaky ground in claiming what they do is a separate thing all by itself because none of them have ever seen the algorithms they claim to be an expert in. All the search engine companies keep their actual code a closely guarded secret. The whole purpose of the code would be defeated if people could game the system.
Search engines do, however, make public guidelines for how to optimize your site to get the best possible results on their service. It's in their interest to do so, because if a user finds a site through their service but can't actually access the content on that site because of some interface problem, then in the mind of a user, that's the same as being taken to an irrelevant site. In that case, they might just as easily blame the search engine for having offered the link in the first place.
Good design helps users find content within sites, search engines help people find content among sites. Web design brings content to people, search engines bring people to content. They have the same ultimate goal of connecting people and content.
Which is why the advice from search engines on how to "optimize" web sites looks a lot like the same instructions for building a web site that you'd get in almost any decent CSS tutorial. Funny how that works.
Bottom line for SEO as far as building a site goes, search engines reward good design. Good design not in the sense of pretty graphics, but in properly structured and standards compliant code with a reasonable application of usability standards and everything else that a web designer should know about anyway.
Designing for the web means not only designing for people, but for machines.
Of course, the SEO specialists want to not only optimize your site, but your marketing on the web. For example, one of the well known metrics search engines use to rank pages is counting links on other sites that point to your site. So, for example, if you have a web site where you sell cooking utensils, then you probably want to get in touch with recipe sites or restaurant review sites, or whatever else could be in a similar field. If they have a genuine interest in your site, they might write something about you and provide a link. Sometimes people even just do a straight link exchange to help each other out.
Did you really need an SEO to tell you that? Sometimes what is referred to as SEO, or web marketing in general, I would refer to as "common fucking sense."
Your white hat turns grey if you start placing mentions of your site on forums and comments in blogs. It's a fine line between promotion and spam, and you have to use your good sense and judgement.
Your grey hat turns black when you start to engage in tricks to game the system. A classic example is buying up a bunch of domains for the sole purpose of placing links that go back to your site, to skew the rankings algorithms.
Of course, the search engines are well aware of this practise. You don't think the people who work at the search engines read all the same books the SEO consultants do? Who are you going to bet on in that fight? The SEO consultant with his 40,000 dollar invoice and his bag of tricks, or the search engine companies with bottomless resources to hire the best minds in the world to do nothing but conjure up new ways to make sure no one games their system? SEO specialists might get a victory here or there, but it's only a matter of time before any one trick becomes a mere test case in the laboratories of search engine companies.
If SEO consultants are offering expertise in algorithms they have never seen, armed only with information that is publicly available anyway, and are trying to outwit entities with vastly more resource and brain power, how did it ever become it's own thing that people could charge money for?
The internet is everyone's field of dreams, where if you build it, they might come. And it is completely true. If you build it, they really might come. How wonderful!
The catch is in defining what "it" is. "It" is not just anything. Doesn't matter how well your web site is built or what it looks like. If what you are offering is not what people want, then you will get nowhere. A few people will wander by, decide it's nothing worth mentioning to anyone else, and that magic exponential word of mouth that is the fuel for everyone's internet dream does not get ignited.
But who wants to believe that what they are offering isn't "it"? It's human nature that when people are faced with choosing between accepting that their idea is shit or that somehow the world just isn't appreciating it in the right way, people will choose the option that lets them stay in love with their own ideas.
Enter the SEO specialist. Maybe it's not that your web site just sucks. Maybe it's that you're being muscled out of the top ten Google results by other, less worthy sites, that are "optimized."
After all, consider that there are plenty of sites and internet memes that have taken off in spite of the fact that their design was crap. Can you name the reverse situation, though, where a web site is getting sustained high traffic despite its content and only because it has some kind of optimal search engine placement?
The SEO specialist is not solving your web marketing concerns, they're just soothing that annoying ache of cognitive dissonance.
If I could quiet the part of me that has a distinct distaste for buzz words, I could probably make decent money being an SEO specialist. I would gladly take your money to tell you over the phone what the print designer or HTML coder masquerading as a web designer should have already spent twenty minutes reading on the internet for free.
Or, you could hire me as a web designer and get SEO built in. You can find it on my invoice under "CFS."