I have run organic search programmes since 2012, on sites as small as twenty pages and as large as a national publisher serving 44.9 million impressions a month. Most of the work is technical diagnosis first and content second, because in my experience the thing holding a site back is usually something switched on by accident rather than something missing.
+308%
Best organic lift in five months, clicks 83 to 339 a month
44.9M
Monthly impressions on the largest site I work on
223,605
Organic clicks a month across the 39 properties I report on
14 years
Doing this continuously, since 2012
What I am usually asked for
Technical audits where the brief is "traffic has dropped and nobody knows why"
Indexation diagnosis: pages that are live, linked and still not in Google
Site structure for service and location pages that have to rank commercially
Migration and rebuild SEO, where the job is to lose nothing on cutover
Content programmes planned against real keyword data rather than a topic list
Schema, internal linking and sitemap hygiene at template level, not page by page
Monthly reporting a client can actually read, with the honest months included
How I work
I start read-only. Before I change anything I pull Search Console, crawl the site, inspect the live HTML rather than trusting the plugin settings screen, and write down what is actually true.
Then I fix in order of what is costing the most, verify each fix against the live page with the cache busted, and record it. If something I did made things worse, that goes in the report too.
I do not sell rankings. I report clicks, impressions and conversions, because those are the ones that pay for the work.
Every engagement starts with a read-only audit before anything is changed.
Past jobs
Five SEO jobs and what happened
Client names withheld. Every figure is taken from that account's Google Search Console data, in the thirty day window named.
UK structural surveying firm
Organic growth
Brief
A small professional practice with almost no organic visibility, bidding against national survey chains for the same enquiries.
What I did
Restructured the service and location pages so each had one clear commercial target, cleared the technical faults suppressing indexation, wrote the money pages, and set up monthly Search Console reporting so progress was visible rather than asserted.
Result
Organic clicks rose from 83 to 339 a month, a 308% increase, on 18,219 monthly impressions and still rising at the last report.
Food tour operator, Mallorca
Launch to traffic
Brief
A new tourism site in a competitive seasonal market, starting from effectively zero search visibility.
What I did
Built out the experience and location page set, handled multilingual configuration properly so the alternates and canonicals agreed with each other, and ran a content programme into the season.
Result
Clicks up 825% month on month at the strongest point, on 85,965 monthly impressions.
US almanac publisher
SEO at scale
Brief
A long-established national publishing brand with a very large archive, where any template change touches tens of thousands of URLs at once.
What I did
Crawl efficiency and template-level technical work, with changes staged, measured and rolled out rather than applied site-wide and hoped for. Reporting at a level the editorial team could act on.
Result
196,707 organic clicks and 44.9 million impressions in a rolling thirty day window.
Holiday lettings group, four separate sites
Local SEO
Brief
Four small accommodation sites under one owner, each thin on content and each competing in its own local market.
What I did
Gave each property its own genuine content rather than spinning one template four ways, built out the local and amenity pages people actually search for, and fixed the duplicate-content overlap between the sites.
Result
Clicks up 36.7%, 38.6%, 57.1% and 70% respectively over a single quarter, with the largest site reaching 116,010 monthly impressions.
National studio directory
Large site cleanup
Brief
A directory of several thousand business listings whose underlying data had faults that were generating duplicate and conflicting pages.
What I did
Audited the listing data itself, de-duplicated 1,182 business records, repaired the listing templates, and set an enrichment programme running across the remaining listings with missing media.
Result
539,689 monthly impressions and 4,080 clicks, on a far smaller and cleaner index than before.
Portfolio totals, for scale: 223,605 organic clicks and 47.8 million impressions a month across the 39 properties running through my reporting platform. One national publisher accounts for 196,707 of those clicks, so the remaining 38 sites total 26,898 between them. I would rather give you both numbers than the flattering one on its own.
Honest caveat: the directory above was down 10.1% on the previous thirty days at the last report, because the month was spent removing duplicate pages that had been generating junk impressions. I report the down months too. A client who only ever sees green arrows is being managed, not informed.
Diagnosis
Five things that usually turn out to be the problem
These are all real findings from client sites, and all of them were invisible from the plugin settings screen.
A staging flag that survived the launch
A site goes live, keeps its staging search setting, and WordPress quietly forces noindex site-wide and drops the canonical tags. The robots.txt looks completely normal, so nobody finds it for months.
An SEO plugin redirect eating its own page
A single self-redirect configured in a premium SEO plugin silently removed a live, indexed, ranking page from the XML sitemap. The page still loaded fine for visitors.
Translated duplicates serving stale dates
A multilingual plugin was generating six indexable database rows per URL, and the sitemap was picking the oldest one, so every page reported a last-modified date months out of date.
"Crawled, currently not indexed" treated as a content problem
A client was about to commission a new pillar article. The article already existed, was good, and had simply not been crawled since August. The job was not writing, it was getting the existing page indexed. That saved the budget and fixed the actual issue.
Verification lost in a host migration
A site moves host, the verification tag does not come with it, and Search Console access quietly expires about two weeks later. The client finds out when they want a report.
Why this matters for hiring
None of these were found by running a tool and sending the PDF. They were found by reading the live HTML, querying the database, and not trusting a settings screen that claimed everything was fine.
Measurement
Google Search Console, GA4, Looker Studio, Ahrefs, Semrush, Screaming Frog, Bing Webmaster Tools, Search Console and GA4 APIs for bulk pulls.
On-site
Yoast, Rank Math, Slim SEO, WPML and Polylang, Redirection, schema written by hand when a plugin gets it wrong.
Diagnosis
WP-CLI, direct database queries over SSH, cache-busted curl against the live page, URL Inspection API, server log review.
Reporting
A reporting pipeline and client portal I built myself, running across 47 properties, so the monthly numbers are consistent and auditable.
Reviews
Clients on the search work
Josh worked as a WordPress expert on the Codeable platform when I was the head of community. He's a stand-out web professional to me. He has a unique and special ability to get along with everyone, even when facing disagreements. As cliche as it may sound, he's also a creative problem-solver. He's always willing to try new, crazy ideas to see what will stick. And that's a skill that is much needed in the ever-changing world of SEO. Josh would be my top recommendation for your SEO needs!
MRMegan RoseHuman Made, formerly Head of Community at Codeable · LinkedIn
Josh is always quick to respond, making sure my website runs smoothly and ranks well on Google.
AMArnaud MireyGoogle
I have worked with Josh for over nine years now with great results in web design, SEO, and digital marketing. Josh is reliable, resourceful, and always goes the extra mile. I am happy to recommend him.
CBChristine BowlesGoogle
We have been working with Josh Morley for over a year now, and I cannot speak highly enough of the results and the experience. From the very beginning, it was clear Josh is not just talented but deeply invested in helping your business grow, not just by doing the work, but by teaching you how to grow along the way.
RDRev. Dr. Sanette FlemingI Was Just Thinking Ministries · Google
Josh was a pleasure to work with. He was very responsive and able to diagnose the issue with my website immediately. He is dependable and has a great mind for SEO. I look forward to working with him more.
LFLynn FellhauerLarge format graphics · LinkedIn
Once again quick to respond, help and start work.
CBChristian B.Codeable
The rest of the skill set
Most jobs touch more than one of these. I can take the whole thing or just the part you are short of.
Contract, part-time, one-off fix or white-label work for another agency: all fine. Say what you need and when you need it, and I will tell you honestly whether I am the right person for it.