SEO Case Study: How I Rebuilt & Scaled Organic Performance for a US E-commerce Brand (Without Off-Page SEO)
Between March 10 — May 30, 2025, I worked on scaling organic performance for a US-focused WordPress based e-commerce (WooCommerce) brand in the outerwear apparel niche (domain name not mentioned for client confidentiality).
What The Situation Looked Like Before
My first move was to audit the site completely, from head to toe. Here’s how I audited the site:
- Manually audited the site (checked product pages, category pages, landing pages, content, images quality, etc).
- I ran a full scale audit of the site using Screaming Frog.
- Checked Google Search Console (GSC) for any issues.
- Checked Core Web Vitals and website speed issues on Page Speed Insights and GT Metrix.
To my surprise the website was structurally broken from an SEO point of view. It was difficult for a normal user to navigate through the site. Found many product and category pages with no descriptions. Hundreds of demo testing products published on the live site. Products uploaded to incorrect or uncategorized categories. Products missing attributes and google for woocommerce listing fields (GTIN/MPN, brand, color, material, size, gender, etc).
The screaming frog report showed hundreds of broken links, 50+ orphan pages, missing meta titles, descriptions & heading tags, duplicate content, thin content pages, important pages were buried deep wihtin the silos, missing schema, etc.
Google search console also showed errors like cannibalization, soft 404s, duplicate urls, crawled currently not indexed, discovered currently not indexed, indexed, though blocked by robots.txt, canonical errors, and sitemaps not properly fetching. The website’s core web vitals were a disaster too, with LCP reaching upto 12.7s.
What I did (The Rebuild)
This wasn’t a “publish more content” situation; The site didn’t have a growth problem, it had a structural failure. Search engine couldn’t understand the site and users couldn’t navigate it. The experience was slow and confusing.
So instead of chasing new keywords or pumping new content, the priority was clear, Fix the foundations first. Make every page indexable, understandable and conversion-focused.
My goal was simple, “Bring in Buyers not Browsers”
This meant rebuilding the SEO framework in a way that aligned technical health, search intent, and conversion paths.
Technical Cleanup & Resolving Indexing Issues
I started by making the website crawlable and trustworthy again. My first step to fixing the site was to resolve all the technical issues present on the website. I started by fixing broken links, internally linking all the orphan pages, cleaned up duplicate urls using correct canonicalization, removed and consolidated low-value pages causing cannibalization, fixed robots.txt file and sitemap.xml issues so Google bots (and others) could actually crawl what needed to be crawled.
I handled each GSC error intentionally:
- Soft 404s → My method for resolving this error was to first decide whether the page deserves to exist or not. Many urls were technically live, returning a 200 status code, but many pages had no real content, no products, no internal links, and no search demand. I either improved these pages with new and fresh content or removed them completely.
My checklist was simple if a page has business and conversion value, I added content, internal links, and product relevance to it, but if it did not then I would simple either delete the page and mark it as 410 (permanently deleted) using Rank Math or put a 301 (permanent) redirection to the closest most relevant page.
This reduced the crawl budget’s wastage and simply told Google to only index those pages which had real value and actually serve a purpose. - Crawled / Discovered — Not Indexed → To resolve this error, I had to make pages important again. These were the pages that existed but Google chose not to index them because they had issues like; they weren’t linked properly, looked similar to other pages, or they simply didn’t feel important enough in the site structure to Google.
So I did what needed to be done; I linked these pages from relevant categories and pages, Added contextual internal links, Improved content depth so pages didn’t look like duplicates or copies of each other, and Ensured that each page is targeting a unique intent.
And once google saw those internal links, unique content and clear purpose, it started indexing and even ranking them. - Indexed but blocked → This meant Google was having technical contradictions with the site, like some pages were indexed but were blocked in the robots.txt or meta tags.
I audited the robots.txt, meta robots tags and sitemaps manually, and if a page was important and should be ranking, I unblocked it from everywhere. On the other hand, if the page shouldn’t rank, I removed it from the sitemaps and put a no-index meta tag on the page. - Canonical mismatches → I aligned templates, urls, and parameters to solve this issue. Didn’t understand? Here let me explain in simpler terms;
This was one of the biggest technical problem the site was facing and struggling because of. The same product or category existed as clean urls, urls with tracking parameters, urls generated by filters or attributes, pagination urls, duplicate template versions. Google didn’t know which page was “real one” or in other words, it didn’t know which page had to be indexed out of all those pages.
So, the fix was pretty clear; Pick one primary url per page. Set canonical tags to that url accross product templates, filtered pages and parameters based urls. Removed parameter urls from the sitemaps and ensured that the internal links always pointed to the canonical version.
So instead of seeing 5 different versions of the same page, Google now only saw 1 page that had all the information.
My aim was to reduce noise and send Google clean, consistent signals. And after this cleanup, I saw fewer crawl rate by Google on useless urls and indexing started stabilzing. The site’s authority stopped getting split across duplicates and rankings improved without publishing new content.
On-Page SEO & Optimization
After the technical fixes, the next step was performing the on-page seo. In this phase of the project, I started to put my focus on writing unique intent based content; which included product and category descriptions, commercial intent blogs, meta titles and descriptions, etc. I fixed missing and misused heading tags (H1, H2s, H3s, etc), Improved product mapping (putting them in the right categories), Optimized internal linking to push authority toward money pages, Mapped each page to commercial or transactional intent.
With LCP reaching 12.7 seconds, the site’s performance in terms of speed was hurting the engagement and conversion rate, and increased bounce rates. To deal with this, I optimized image sizes (alt texts too), put lazy load on, collaborated with my development team and reduced render-blocking scripts, minified the use of CSS and Java, and improved server response time and frontend efficiency. This brought the site back within acceptable Core Web Vitals score (2.7 or 2.9 seconds), which was critical for both, SEO and UX.
The Outcome (Results from June 01 to July 01)
Once the technical and structural issues were fixed, growth started to come, and it didn’t come from publishing new content, No. It came from making existing pages indexable, faster, and commercially relevant.
Get Maaz Ali’s stories in your inbox
Join Medium for free to get updates from this writer.
What followed was a clear shift in visibility, traffic quality, and buyer behavior…
Pages that were previously ignored, duplicated, or incorrectly indexed started appearing consistently, especially the product and the category pages, not blogs.
Instead of chasing informational terms and queries, rankings improved for high-buying-intent queries related to:
- Specific apparel products
- Celebrity-inspired outerwear
- Branded product categories
Several commercial queries reached top 1–5 positions, while others moved from page 3+ into page 1 and early page 2. These were the keywords that converted. They were searched by the users who knew what they want, they were just figuring out where to buy it from.
Traffic concentrated around the homepage, category pages and individual product pages. Organic traffic started moving through the funnel.
Google Analytics (GA4) showed the following results:
- 4,476 total sessions
- 2,478 engaged sessions
- 3,117 total users (3,022 new users and 432 returning users)
Organic Performance Breakdown
- Organic Search: 1,435 users
- Organic Shopping: 956 users
- Direct: 531 users
- Social + Referral traffic supplemented organic growth
Device Split
- Mobile: 2,137
- Desktop: 990
- Tablet: negligible
Conversion Signals
- Add to Cart: 247
- Checkouts initiated: 106
- Purchases completed: 78
This wasn’t growth driven by blog spam, keyword stuffing, or short-term tactics. It came from removing technical contradictions, fixing indexation at scale, consolidating authority, making product pages visible, fast, and useful. Organic traffic shifted from “people browsing” to “people buying.”
That’s what scalable e-commerce SEO actually looks like.




