← Back to portfolio projects

Client project · Public edition · Name withheld

Public SEO & GEO audit: an Indonesian WooCommerce manufacturer

A point-in-time audit of a uniform-footwear manufacturer's ecommerce site. The business had a credible story and a working store, but a handful of foundational problems were limiting how easily people, search engines and AI systems could find and verify it. The fastest gains were not a rebuild. They were targeted fixes.

Audit snapshot 25 August 2026 Platform WordPress · WooCommerce · Elementor Scope Technical SEO, content, GEO readiness Output 13 findings · 90-day roadmap

Executive summary

Credible proof, hard to find.

The audit found a credible manufacturing story and a technically functional ecommerce site. What held it back were fixable basics: an incomplete homepage title, pages without a main heading, missing stylesheet files, oversized images, crawl paths that hid products, duplicate category and tag pages, and commercial pages that did not answer buyers' questions.

The biggest opportunity was to make the proof the business already had easier to verify and retrieve: ISO 9001:2015 positioning, operating since 2009, clear product categories (PDH, PDL, security and officer footwear), a two-year replacement warranty claim, and procurement information for institutional buyers. Those claims appeared on the site or in older content, so the report recommends backing each one with current certificates or records before repeating it in new marketing pages.

The practical lessons are also written up in WooCommerce SEO Audit: 13 real issues and fixes.

Public edition: the client's name, domain, contact details and private analytics are withheld. Measured figures and findings are kept as recorded.

PageSpeed Insights snapshot

Mobile was the weak side.

Laboratory results from 25 August 2026. Scores vary by test run, device profile, network and software version, so they are re-tested after implementation.

Performance

56 mobile75 desktop

The mobile lab score was materially weaker.

Accessibility

83 mobile92 desktop

Usability and accessibility issues remained, especially on mobile.

Best Practices

96 mobile96 desktop

The strongest area in the recorded test.

SEO

77 mobile92 desktop

A 15-point mobile gap that needed the detailed audit list, not guesswork.

Agentic Browsing

1/3 mobile1/3 desktop

An experimental Lighthouse category. Not a ranking score and not an AI citation score.

Priorities

What to fix first, and how long it takes.

PriorityFindingRecorded evidenceEstimated effort
P0Homepage title and heading structureTitle shown as “- [Brand] Indonesia”; four pages without an H12.5 hours
P0Missing Elementor CSS filesFive stylesheet URLs returned 404 with HTML content2 hours
P0Oversized imagesNine large images, about 23 MB combined1 day
P0Full URL inventory and crawl validationLegacy and orphan URLs outside the normal crawl3–4 hours
P1Thin or incomplete commercial content23+ pages below 200 wordsSeveral weeks of content work
P1Taxonomy duplication and crawl pathsCategory/tag overlap and a pagination issue1–2 days

Method

Evidence first, then recommendations.

The audit combined a Screaming Frog crawl, Google PageSpeed Insights on mobile and desktop, a direct review of public search results, and inspection of selected live and legacy URLs. Recommendations were grouped by technical risk, user impact, effort and how easily the result can be verified.

OB

Observed

The issue appeared in the crawl or test output.

IN

Inferred

The evidence points to a likely cause, but server, CMS or plugin access is needed to confirm it.

RE

Recommended

Standard implementation practice. Not a guarantee of rankings, traffic or AI citations.

Findings

Thirteen technical and content findings.

Observed · 3.1

Homepage title and primary heading

The homepage title was recorded as “- [Brand] Indonesia”, which points to an empty title variable. The homepage, /catatan-kaki/, /media/ and /kontak/ had no H1.

Why it matters
A descriptive title and one clear main heading tell people and search systems what a page is for. A missing H1 is not an automatic penalty, but it weakens structure and accessibility.
Action
Set a descriptive title and one H1 per page. Suggested title: “Produsen Sepatu PDH dan PDL Bandung | ISO 9001 - [Brand]”. Suggested H1: “Produsen Sepatu Seragam PDH dan PDL untuk Instansi dan Korporasi”.
Verify
Check the browser title and rendered H1, re-crawl, then use URL Inspection in Search Console.

Observed · 3.2

Five missing Elementor stylesheet files

Five CSS files under /wp-content/uploads/elementor/css/ (post-1332, post-1322, post-375, post-1264 and post-2108) returned a 404 with HTML content.

Why it matters
Missing stylesheets can cause incomplete styling, layout shifts, wasted downloads and inconsistent rendering. The evidence proves the files are missing, not why.
Action
Regenerate Elementor files and data, clear WordPress and CDN caches, and confirm the CDN or origin serves the current CSS. Review cache-exclusion and origin-pull rules only if errors remain.
Verify
Each CSS URL returns 200 with text/css; a re-crawl shows the five errors cleared.

Observed · 3.3

Oversized image payload

The reviewed images totalled about 23 MB. Two banners were 4.6 MB each; others ranged from 1.0 to 3.9 MB. Smaller generated versions existed, but the full-size originals were being requested.

Why it matters
Large images slow the largest visible content, especially on mobile connections. Missing width and height add layout movement.
Action
Resize to display dimensions, use WebP or AVIF where appropriate, output responsive srcset, keep PNG only when transparency justifies it, and add accurate width, height and alt text.
Verify
Re-crawl images, re-run PageSpeed, confirm the right variants load and compare page weight before and after.

Observed · 3.4

Agentic Browsing needs careful interpretation

PageSpeed recorded Agentic Browsing at 1/3 on mobile and desktop. Lighthouse added this experimental category to assess agent-oriented accessibility, layout stability, discoverability and emerging agent interfaces.

Why it matters
It is not a Google ranking score and does not measure whether ChatGPT, Gemini, Claude or Perplexity will cite a brand. A missing llms.txt is optional in Lighthouse and not required for Google Search or Google's generative AI features.
Action
Record exactly which checks passed or failed. Prioritise accessible names and labels, a valid accessibility tree, stable layout, crawlable content and usable forms. Treat llms.txt as an optional experiment.
Verify
Re-run the same Lighthouse version and keep screenshots or JSON exports for comparison.

Observed · 3.5

Product pagination was not a normal link

Screaming Frog flagged /produk/page/2/ with “Pagination URL Not in Anchor Tag”. The next page was signalled in metadata or scripts, not confirmed as a standard HTML link.

Why it matters
Crawlers and agents that do not trigger the script may discover fewer products. It does not prove Google can never find them, but it is an avoidable risk.
Action
Use crawlable links from WooCommerce pagination or paginate_links(). If a Load More or infinite-scroll pattern is used, provide equivalent numbered or Previous/Next links.
Verify
Page 3 appears inside an a href in the source of page 2, and a fresh crawl finds page 3 and beyond.

Observed · 3.6

Product categories and tags overlapped

Two product groups existed as both category and tag URLs, with identical or near-identical titles that still contained the default word “Archives”.

Why it matters
Parallel archives split internal signals, waste crawl effort and give users duplicate landing pages.
Action
Keep categories as the main shopping structure, set redundant tag archives to noindex, remove internal links to them, and write descriptive category titles without “Archives”.
Verify
Re-crawl titles and indexability; categories stay indexable and redundant tags are excluded.

Observed · 3.7

Twenty-three or more pages had limited text

The crawl recorded 23+ pages below 200 words, from 33 words on /kategori-produk/ to 183 words on a main product page.

Why it matters
Low word count is not a violation by itself. The problem is that key commercial pages did not answer buyers' questions: materials, sole construction, sizes, fit, use case, certification, warranty, care, procurement and availability.
Action
Expand only pages with a clear search or conversion purpose, using verified specifications. As planning ranges: 700–900 words for categories and 450–600 for main products. Usefulness matters more than a fixed count.
Verify
Check each page against its user task, validate every claim, then monitor queries, clicks, engagement and conversions.

Observed · 3.8

Product titles relied on internal model names

Fifteen product titles used model names only, without saying what the product is or what makes it different.

Why it matters
Model names help existing customers. New buyers need the category and key feature before they click.
Action
Keep the model name and add verified descriptors, for example “Sepatu PDH [Model] Doff - Kulit Doff Pria | [Brand]”. Never add materials, anti-slip claims or certifications that are not confirmed for that product.
Verify
Compare snippets and Search Console click-through rates after recrawl; keep titles accurate and unique.

Observed · 3.9

The blog archive inherited an article title

The /blog/ archive used the title of a recent article, about 85 characters long.

Why it matters
The title misrepresents the page and gets truncated in results.
Action
Set a dedicated archive title such as “Panduan Sepatu Dinas dan Perawatan | Blog [Brand]” and check the SEO plugin's posts-page template.
Verify
Check the browser title and re-crawl before requesting recrawling.

Observed · 3.10

Mobile SEO score was fifteen points lower

SEO scored 77 on mobile and 92 on desktop. The summary score alone does not say which checks failed.

Why it matters
The gap points to mobile-specific failures or rendering differences, and should not be diagnosed from the number alone.
Action
Open the mobile Lighthouse details and record every failed audit: tap targets, viewport, legible text, crawlable links, status or metadata differences. Fix what the report actually shows.
Verify
Re-run the same test after each fix and keep the detailed results, not only the score.

Observed · 3.11

Legacy and orphan URLs created consolidation risk

Five URLs surfaced outside the standard crawl, including /sepatu-dinas-pdh-pdl/, /sepatu-seragam-pdl-pdh-2/, /tentang-kami/, /order-khusus/ and a malformed low-value page. The first two targeted almost the same theme.

Why it matters
Orphan pages can stay indexed without internal links, similar pages divide relevance, and useful proof on old pages can be lost if URLs are deleted without review.
Action
Build a full URL inventory from Search Console, sitemaps, crawl data, analytics, backlinks and site searches. Keep useful evidence, pick one primary page, use page-to-page 301 redirects, and return 404/410 only for pages with no value or replacement.
Verify
Test every redirect for loops and chains, confirm the final URL is indexable, and watch Page Indexing in Search Console.

Observed · 3.12

AI crawler access was not conclusively verified

An automated request was blocked during the review, while Google-indexed pages stayed visible. A crawler rule, firewall, security plugin, rate limit or temporary hosting behaviour could each explain it.

Why it matters
Crawler access is a prerequisite for systems that fetch public pages, but allowing a user agent guarantees nothing about indexing, ranking or citation.
Action
Review robots.txt, server logs, WordPress security settings, CDN or WAF rules and response codes for each verified crawler. Avoid a blanket allowlist; use narrow rules based on each provider's documentation.
Verify
Test robots directives and real HTTP responses separately, and look for successful requests from verified crawlers in the logs.

Observed · 3.13

Structured data and entity evidence needed work

The reviewed pages did not consistently describe the business, products, offers, breadcrumbs and contact details in validated structured data.

Why it matters
Structured data helps search engines understand entities and can make pages eligible for rich results. It guarantees neither rankings nor AI citations, and it must match visible content.
Action
Use only accurate, relevant schema: Organization or LocalBusiness, Product and Offer where product data is complete, BreadcrumbList for navigation. Do not treat FAQ markup as a promise of rich results.
Verify
Validate with the Schema.org Validator and Rich Results Test, then watch enhancement reports in Search Console.

Before and after

Recommended changes, side by side.

AreaRecorded conditionRecommended condition
Homepage title- [Brand] IndonesiaProdusen Sepatu PDH dan PDL Bandung | ISO 9001 - [Brand]
Homepage H1MissingProdusen Sepatu Seragam PDH dan PDL untuk Instansi dan Korporasi
PDL category titlePDL Archives - [Brand] IndonesiaSepatu PDL - Sepatu Dinas Lapangan Tahan Lama | [Brand]
PDL category content137 wordsComplete buyer guidance from verified facts (700–900 words as a planning range)
Product title[Model] Doff - [Brand] IndonesiaSepatu PDH [Model] Doff - Kulit Doff Pria | [Brand], if the material is verified
Product contentAbout 180 wordsVerified materials, sole, sizes, fit, care, warranty, procurement and availability
Product tagsIndexable duplicate archivesNoindex when redundant; useful categories stay indexable
Banner imagebanner-2.png at 4.6 MBResponsive WebP or AVIF at display size
Blog archive titleInherited from an articlePanduan Sepatu Dinas dan Perawatan | Blog [Brand]
Contact page101 words, no H1Clear H1, verified procurement process, operating details and contact options

Recommended category page structure

  • Who the category is for and the working conditions it supports
  • Differences between PDH, PDL, security and officer footwear
  • How to choose materials, sole, fit, comfort and care
  • Verified sizes, specifications, testing, warranty and availability
  • Procurement information for institutions, companies and distributors
  • Real customer questions answered on the page

Recommended product page structure

  • Verified material and lining
  • Verified sole construction and traction claims
  • Size range, fit guidance and weight where available
  • Certification or testing evidence for that exact product
  • Warranty terms and exclusions
  • Care instructions and suitable work contexts

Ninety-day roadmap

Three phases, each with a success check.

TimingWorkstreamKey deliverablesSuccess check
Phase 1 · Days 1–30: fix the foundation
Days 1–7Technical triageHomepage title; four H1 fixes; five CSS errors; robots and WAF review; full URL inventoryCorrect titles and headings; zero CSS 404s; crawler responses documented
Days 8–14Performance and mobileImage resizing and modern formats; intrinsic dimensions; mobile SEO audit detailsLower page weight; less layout movement; failed mobile checks addressed
Days 15–21Crawl paths and duplicatesHTML pagination; tag noindex decisions; author archive decision; redirect mapLater product pages discovered; no redirect loops or chains
Days 22–30ValidationRe-crawl; repeat PageSpeed; Search Console checks; phase 1 reportIssue-by-issue evidence of completion
Phase 2 · Days 31–60: content and structure
Days 31–37Search intent and entity planSeparate retail, institutional and distributor needs; verify business claimsApproved keyword and evidence map
Days 38–45Category contentExpand four priority categories with buyer guidanceNo key category lacks essential buyer information
Days 46–52Product contentExpand eight priority products with verified specificationsProduct claims match source records
Days 53–60Structure and markupOrganization or LocalBusiness, Product, Offer and BreadcrumbList where eligibleSchema validates and matches visible content
Phase 3 · Days 61–90: measure and build presence
Days 61–67Baseline measurementSearch Console segments; conversion tracking; a repeatable AI-visibility question setBaseline saved with date, location and platform
Days 68–75Original helpful contentPDH vs PDL guide; procurement guide; verified ISO explanationContent answers real buyer tasks and cites evidence
Days 76–83Business presenceGoogle Business Profile review; consistent public details; approved testimonialsProfiles and website agree on core facts
Days 84–90Review and handoverRe-measure; document changes; set next-quarter prioritiesTechnical and business outcomes compared with baseline

Measurement framework

Technical scores and business results, tracked separately.

  • Baselines: mobile performance 56, desktop performance 75, mobile SEO 77, mobile accessibility 83, Agentic Browsing 1/3, CSS 404s 5, pages without H1 4, pages under 200 words 23+, duplicate title groups at least 4.
  • Direction, not promises: the target is improvement under the same test setup, not a guaranteed score.
  • Business outcomes: non-brand impressions and clicks, qualified procurement enquiries, contact and WhatsApp conversion events, product-detail engagement, and assisted revenue where it can be attributed reliably.
  • AI visibility: a fixed set of 25 questions across selected platforms, logging date, region, model, exact prompt, whether the brand was mentioned, whether a source link appeared, and whether the description was accurate.

Related service

Audit + Implementation Roadmap

Starting at $1,250 USD. Final pricing depends on site size, catalogue depth, data sources and competitor scope.

  • Technical, on-page and index review
  • PageSpeed and mobile audit details
  • AI-search and agent readiness review
  • Before-and-after recommendations
  • 90-day prioritised roadmap
Book a Free Consultation

Last updated

Chat on WhatsAppGrace usually replies within a day