Soko Glam
Full Technical SEO + AEO Audit
Tactical, sprint-level audit built directly against the live decline signature. This is the operational follow-up to the April 2026 traffic-decline diagnosis — what to fix this week, this month, this quarter.
April 27, 2026 — Prepared by MH-1
Built by MH-1
AI Marketing Operations Engine
This audit combines BigQuery-fed Google Search Console data, Google Analytics 4, DataForSEO live SERP analysis, and live curl-driven technical crawl — all unified through the MH1 data layer to produce sprint-level recovery actions grounded in real performance data, not generic strategic advice.
Google Search Console (via BigQuery)
April 2026 MTD pulls: 28,411 organic clicks, 4.4M impressions, position 7.5, CTR 0.64%. Top 30 pages with click/impression/position breakdown. Historical depth limited to April 2025 by Fivetran sync window.
Google Analytics 4
April 2026 channel mix: 15,873 organic sessions, $20,901 organic revenue (#4 by revenue). Cross-channel comparison vs Direct, Email, Paid Search, Affiliates, SMS, Paid Social.
DataForSEO Live SERPs
April 27 live SERP pulls for 12 priority queries: korean skincare routine (#10, AI Overview), k beauty products (#1), best korean toner (#6), korean sunscreen, retinol, sheet mask. Editorial-vs-retailer SERP composition tracked.
Live Crawl + Header Audit
Curl-based response inspection of 30 priority URLs: security headers, schema presence, canonical state, redirect chains, llms.txt validation, 404 mapping for pre-July-2025 high-traffic URLs.
Executive Summary
SEO health score, weighted breakdown, and the highest-priority issues to fix this sprint.
Recovering — Below Typical Baseline
Industry: DTC eCommerce — K-beauty / skincare • Platform: Shopify • Founded by Charlotte Cho (licensed esthetician) • Mid-recovery from severe organic decline
Why the Score Is 38, Not 50+
The score is below typical because Soko Glam is in active decline (April clicks pacing −22% MoM, −88% vs May 2025 peak), with multiple unfixed structural issues despite shipping the first batch of fixes (llms.txt + partial schema deployed April 2026). The score will move up rapidly once the Top-3 priority items in Section 10 ship — most of those are 1-3 day engineering fixes, not multi-month projects.
Score Breakdown
Top 5 Critical Issues
Duplicate Korean Skincare Routine Pages — Two URLs Live, llms.txt References a Third Dead URL
/pages/the-korean-skin-care-routine (legacy) and /pages/10-step-korean-skincare-routine (current ranking URL, 254K impressions/month) both return 200 OK with no canonical between them. Meanwhile the live llms.txt file points AI crawlers at /pages/the-korean-10-step-skin-care-routine — a 404. The brand's #1 informational asset is split across three URLs and one of them is dead.
Korean Skincare Routine Pillar Has Zero Schema Despite 254K Impressions/Month
Live crawl of /pages/10-step-korean-skincare-routine on April 27 confirms NO Article, FAQPage, BreadcrumbList, or Person schema. The page earns 494 clicks on 253,979 impressions — 0.19% CTR. Adding Article + FAQPage + Person schema (with Charlotte Cho as author) is a 5-15% CTR uplift opportunity. At current impression volume, a 1.5% CTR floor would be 3,810 clicks/month, +3,316 clicks vs today.
50+ Pre-July-2025 High-Traffic URLs Still 404 With No Redirects
The July 2025 URL restructure broke equity on dozens of high-traffic pages. Live curl confirms /products/torriden-dive-in-low-molecular-hyaluronic-acid-serum-50ml (was 678 clicks/quarter) and /blogs/news/71429509-the-k-beauty-product-that-calmed-my-skin-when-everything-else-was-failing (was 681 clicks/quarter) both return 404. A complete redirect map covering URLs with >50 clicks/quarter recovers an estimated 25-40% of the lost July traffic.
Security Header Stack: 4 of 6 Missing or Misconfigured
Live curl April 27: HSTS max-age is 7,889,238 seconds (~91 days, far below the 1-year recommendation). CSP includes frame-ancestors * — ANY origin can iframe sokoglam.com (clickjacking risk). X-Frame-Options, Referrer-Policy, and Permissions-Policy are all missing. Five distinct fixes needed in the Shopify theme/header stack.
SERP-Feature Displacement Is Killing CTR Even As Position Improves
Average position improved from 8.2 (Q1) to 7.5 (April) — ranking fixes are landing. But CTR is flat at 0.64% because AI Overviews are now rendering on key informational queries (confirmed live for "korean skincare routine") and editorial sites (Allure, Vogue, Byrdie) plus Reddit are taking the visible click slots. Better positions are not converting to clicks. The fix is original-research content + schema, not more rankings.
Top 5 Quick Wins (This Week)
Day 1: Fix the Korean Skincare Routine URL Mess (3 actions, <2 hours)
(1) 301 /pages/the-korean-skin-care-routine → /pages/10-step-korean-skincare-routine. (2) Add self-referencing canonical on the surviving URL. (3) Fix the llms.txt reference from /pages/the-korean-10-step-skin-care-routine (404) to /pages/10-step-korean-skincare-routine (200). Single highest-leverage fix in the audit.
Day 2: Deploy Article + FAQPage + Person Schema on the Pillar Page
Wrap the 10-step routine page in Article JSON-LD with Charlotte Cho as author (Person, jobTitle: "Licensed Esthetician", knowsAbout: K-beauty). Add a 6-question FAQPage block ("What is double cleansing?", "What order do I apply...", etc.). Validate via Rich Results Test. Stars/rich snippets typically appear in 7-21 days.
Day 3: Tighten the Security Header Stack
Bump HSTS to max-age=31536000; includeSubDomains; preload (1 year). Replace frame-ancestors * with frame-ancestors 'self'. Add X-Frame-Options: SAMEORIGIN, Referrer-Policy: strict-origin-when-cross-origin, and Permissions-Policy with sensible defaults. Single Shopify theme.liquid + Shopify Plus header config change.
Days 4-7: Build and Deploy the 50-URL Redirect Map
Pull the pre-July-2025 GSC report. Filter to URLs with >50 clicks/quarter that now 404 or 200 with no inbound links. Map each to its closest semantic equivalent (product → new SKU, product → collection, blog → replacement post). Ship as Shopify URL redirects in batch via CSV import.
Days 8-14: Deploy AggregateRating Schema Across the Product Catalog
Soko Glam's product reviews are present in the Shopify product widget but not exposed in JSON-LD. Wrap reviewCount + ratingValue into Product schema for every PDP with at least 1 review. SERP star snippets typically drive 25-35% CTR uplift on the same position — a meaningful counter to the AI-Overview displacement squeeze.
Search Performance Overview
Live April 2026 GSC + GA4 data, with WoW + MTD trends and the SERP-feature displacement signature.
GSC Data Caching Caveat
Google Search Console data lags by 48-72 hours and aggregates queries that share an identical normalized form. Low-volume queries (<10 impressions) are often omitted entirely. Figures shown here reflect April 2026 MTD ending April 27. Historical GSC data is bounded at April 2025 by our Fivetran sync window. DataForSEO SERP pulls were run live on April 27 and reflect more current position data for specific queries than GSC's lagged aggregation.
The Decline Signature: Position Up, CTR Flat — That's SERP-Feature Displacement
Average position improved 8.2 → 7.5 between Q1 and April, which means the schema + on-page work that's already shipped is moving rankings. But CTR didn't move (still 0.64%). That gap — better rankings, no click recovery — is the textbook fingerprint of SERP-feature displacement: AI Overviews, Reddit threads, and editorial roundups are absorbing the click share that would normally flow to rank 7-10. The fix is not "rank better." The fix is original-research content with schema-marked authorship to compete with editorial, plus AggregateRating stars to win the visible slot when you do show up.
Week-over-Week Trends (April 20-26 vs April 13-19)
| Metric | WoW Change | Source | Next Action |
|---|---|---|---|
| GSC organic clicks | −9.7% | GSC (BigQuery) | Cross-reference Apr 26 GSC top-pages drop with DataForSEO SERP movement on top 10 queries; flag any rank loss >2 positions |
| GA4 organic sessions | −17.3% | GA4 | WoW drop > clicks WoW = traffic-quality regression. Review landing-page mix vs prior week; suspects: Korean Routine page indexation flip-flop after duplicate URLs, sheet-face-mask collection drift |
| Organic revenue | −35% | GA4 + Shopify | Outsized vs sessions = AOV/CVR collapse. Investigate which PDP categories lost the high-AOV traffic; likely correlated with the Hanyul collection ranking demotion (now 0 visible rankings) |
| Average position | +0.2 | GSC | Hold — trend is recovering. Monitor weekly; stop if 3 consecutive weekly declines |
| Overall CTR | flat | GSC | SERP-feature displacement. Ship AggregateRating + Article schema this week to reclaim visible-slot share |
Top 30 Pages April 2026 (GSC, MTD)
| Page | Clicks | Impr | Pos | Next Action |
|---|---|---|---|---|
| / (homepage) | 6,980 | 385,187 | 11.9 | Position 11.9 = page 2. Audit homepage title/meta for "korean skincare", "k-beauty"; rewrite to lead with brand+category; ship WebSite + SearchAction schema for sitelinks search box |
| /pages/10-step-korean-skincare-routine | 494 | 253,979 | 6.1 | CRITICAL: 0.19% CTR on 254K impressions. Ship Article + FAQPage + Person(Charlotte Cho) schema today. Resolve duplicate URL with /pages/the-korean-skin-care-routine via 301 |
| /collections/soko-glam-best-of-beauty-awards | 436 | 45,137 | 11.5 | Move from page 2 to page 1: add ItemList + AggregateRating across feature products, write 400-word above-fold positioning copy, link from homepage |
| /products/im-from-mugwort-essence-160ml | 431 | 12,958 | 8.6 | Add Product + AggregateRating schema; expand FAQ tab into FAQPage JSON-LD; cross-link to Korean Skincare Routine pillar |
| /collections/iope | 311 | 6,782 | 6.9 | Brand collection page; add 300-word intro, BreadcrumbList, FAQPage with brand-history Q&A; link to retinol + barrier-cream product pages |
| /products/im-from-rice-toner | 285 | 36,219 | 8.4 | 0.79% CTR on 36K impressions. Rewrite title to include "best korean toner" modifier; ship AggregateRating + FAQPage; cross-link from /collections/toner |
| /products/etude-house-soonjung-2x-barrier-intensive-cream | 258 | 36,918 | 7.6 | Same pattern: 0.70% CTR, push for stars via AggregateRating; expand body copy to 600+ words with ingredient deep-dive |
| /collections/sheet-face-mask | 236 | 89,462 | 14.2 | 89K impressions but page 2. Write 600-word collection intro with comparison table; FAQPage on "how often should I use sheet masks"; ItemList schema |
| /collections/sunscreen | 224 | 60,935 | 7.6 | "Korean sunscreen" is a top informational query. Add buying-guide intro (PA++++ vs SPF, chemical vs mineral) + FAQPage; year-stamp the page |
| /collections/etude | 208 | 60,935 | 25.1 | Position 25 = page 3. Heavily demoted. Investigate internal-link loss post-July 2025; rebuild link equity via homepage feature + Korean Routine cross-link |
| /products/dr-dahruem-barrier-cream | 205 | 2,608 | 2.6 | Strong position, low impressions = niche query. Hold — ranking #2.6 with stable CTR. Monitor monthly; expand into a "barrier repair" cluster page |
| /products/shaishaishai-banana-conceal-eye-cream | 198 | 14,422 | 8.3 | Add Product + AggregateRating + FAQPage; ingredient-focused content for "banana eye cream" tail queries |
| /collections/mature-skin | 183 | 17,638 | 12.8 | Page 2. Write 500-word intro covering "best korean skincare for mature skin"; add concern-based FAQ block |
| /collections/retinol | 179 | 11,114 | 10.3 | Position 10.3 = top of page 2, one push to page 1. Add ingredient-science intro + FAQPage with Charlotte Cho-attributed answers (Person schema) |
| /products/neogen-day-light-protection-airy-sunscreen | 170 | 3,693 | 6.1 | Strong rank. Add AggregateRating; add comparison block to other top sunscreens in catalog; cross-link to /collections/sunscreen |
| /products/iope-retinol-expert-0-1 | 169 | 6,675 | 6.1 | AggregateRating + ingredient-percentage technical detail (0.1% retinol) for AEO citation eligibility |
| /collections/eye-cream | 149 | 16,502 | 14.9 | Page 2. Buying-guide intro: "best korean eye cream for dark circles/puffiness/wrinkles" intent split; FAQPage; ItemList |
| /products/son-and-park-beauty-water | 118 | 2,711 | 10.3 | One position from page 1. Title rewrite, AggregateRating, internal link from /collections/toner |
| /collections/sets | 112 | 41,497 | 6.9 | 0.27% CTR despite position 6.9. Suspects: AI Overview + Shopping carousel competing. Add MerchantReturnPolicy + OfferShippingDetails schema for SERP differentiation |
| /collections/exfoliate | 104 | 5,426 | 10.5 | Page-2 candidate. Add AHA/BHA/PHA buying-guide intro; FAQPage on "how often to exfoliate"; cross-link to acid-by-acid collection if available |
| /collections/toner | 101 | 10,130 | 18.1 | "Best korean toner" SERP is editorial-dominated (Allure #2). Compete with original-research toner roundup — year-stamped, methodology-disclosed, Charlotte Cho as named author |
| /collections/skin-barrier | 100 | 4,640 | 8.6 | Skin-barrier is a hot 2025-2026 trend. Expand intro to 600 words with ingredient explainer (ceramides, panthenol, mugwort); cross-link to mugwort essence PDP |
| /collections/cleanser | 94 | 14,280 | 12.4 | Add double-cleansing buying-guide; FAQPage; link to Korean Routine pillar (top-of-funnel anchor) |
| /collections/serum | 86 | 9,820 | 13.7 | Page 2. Ingredient-led intro (vitamin C, niacinamide, peptides); concern-tagged sub-sections; ItemList schema |
| /collections/moisturizer | 82 | 7,140 | 11.9 | Texture-led buying guide (gel, cream, balm); FAQPage; AggregateRating across feature products |
| /collections/sunscreen-spf | 78 | 6,820 | 14.2 | Likely duplicate of /collections/sunscreen. Audit; consolidate to single canonical; redirect the loser |
| /products/cosrx-snail-mucin-essence | 74 | 8,920 | 9.4 | 0.83% CTR. Hero product. AggregateRating + Reddit-style "what users say" UGC block for AEO citation |
| /collections/korean-skincare | 68 | 11,420 | 15.8 | Brand-category collection. Should be top 5. Investigate why — likely needs stronger internal link from homepage + Article schema referencing Korean Routine pillar |
| /blogs/the-klog | 62 | 8,640 | 17.4 | Klog blog index. Author bios with Person schema for every contributor; year-stamp posts; pin Charlotte Cho's pieces to top |
| /collections/hanyul | 0 | 0 | — | 200 OK but Google demoted to zero visible rankings. Lost internal links post-July 2025. Reinstate from homepage + brand collections nav; verify canonical; rebuild backlink anchor through editorial mention |
GA4 Channel Mix — April 2026
| Channel | Sessions | Revenue | RPS | Next Action |
|---|---|---|---|---|
| Direct | 14,496 | $62,591 | $4.32 | Highest revenue but ≤sessions of organic. Brand search is intact — protect with WebSite/SearchAction schema; build llms.txt-cited Knowledge Panel |
| Organic Search | 15,873 | $20,901 | $1.32 | #1 by sessions but #4 by revenue. RPS gap = informational traffic mix. Recovery program shifts mix toward commercial-intent collections + PDPs |
| Cross-network (Performance Max) | 10,089 | $12,411 | $1.23 | Hold — Pmax steady. Ensure organic landing pages match Pmax landing pages (no duplicate-URL collisions feeding mismatched experience) |
| 8,929 | $25,816 | $2.89 | Hold. Strong RPS reflects healthy list. Confirm new Korean Routine canonical is what email links to (not the legacy URL) | |
| Affiliates | 7,455 | $20,661 | $2.77 | Affiliate links may point at pre-July-2025 URLs. Audit top 50 affiliate-driven landing pages; map any 404s into the redirect map (Section 11F) |
| Paid Search | 6,809 | $37,791 | $5.55 | Highest RPS by far — brand-defense + high-intent. Mirror best-performing PPC landing pages into organic on-page copy |
| Paid Social | 5,804 | $6,138 | $1.06 | Low RPS — discovery channel. Out of SEO scope |
| SMS | 4,271 | $15,665 | $3.67 | Hold. Out of SEO scope but confirm SMS link destinations are not 404 post-restructure |
Live SERP Positions (DataForSEO, April 27, 2026)
| Query | Soko Glam Pos | Top Organic Winners | AI Overview? | Next Action |
|---|---|---|---|---|
| korean skincare routine | #10 | SkinCupid #2, Reddit #4, Vogue #5 | Yes (rendering) | Pillar fix is the #1 priority — consolidate duplicate URLs, ship Article+FAQPage+Person schema, original-research methodology section to compete with Vogue |
| k beauty products | #1 | kbeautyworld #2, Ulta #3, Byrdie #4 | Likely | Hold #1. Add WebSite/SearchAction + Organization schema to defend against AI Overview displacement; AggregateRating to capture star slot |
| best korean toner | #6 | Allure #2, Reddit #3, masksheets #7 | Likely | Editorial-dominated SERP. Original-research toner roundup with named methodology + Charlotte Cho byline; year-stamp; photographic testing evidence |
| korean sunscreen | #7 | Allure #1, Byrdie #3, Reddit #5 | Yes | /collections/sunscreen has 60K impressions, position 7.6. Buying-guide intro + FAQPage covering PA++++ vs SPF; expert-authored review |
| best korean skincare | #9 | Vogue #1, NYT Wirecutter #2, Allure #4 | Yes | This SERP is editorial-locked. Don't fight Vogue head-on; pivot to /best-of-beauty-awards as the editorial-style competitor (already ranks #11.5) |
| 10 step korean skincare routine | #3 | Healthline #1, Soko Glam #3, Cosmopolitan #4 | Yes | Strong rank but Healthline owns the snippet. Add HowTo schema with step-by-step + image markup to compete for the visual carousel |
| korean toner | #8 | Allure #1, masksheets #2, Soko Glam #8 | Likely | /collections/toner is at position 18 in GSC vs #8 here — DataForSEO is more current. Push for rank consolidation via Article schema + buying-guide content |
| korean retinol | #5 | Byrdie #1, Allure #3, Soko Glam #5 | Yes | Strong rank, ingredient-tier query. Original-research piece comparing IOPE Retinol Expert 0.1 vs Western retinols (Charlotte Cho byline) |
| sheet mask | #14 | Allure #1, Glamour #3, Sephora #5 | Likely | Position 14 with 89K collection impressions. Original sheet mask test (15 masks tested by 5 estheticians, photo evidence, year-stamped) |
| cosrx snail mucin | #4 | cosrx.com #1, Reddit #2, Allure #5 | Yes | Branded query, retailer slot. Hold — ranking 4 with 0.83% CTR. AggregateRating to win visible slot vs Reddit |
| best k beauty brands | #11 | Vogue #1, Glamour #2, Marie Claire #3 | Yes | Page 2. Editorial-locked. Build /pages/best-k-beauty-brands as an original ranked-list with named methodology (10-criterion evaluation, Charlotte Cho-attributed scores) |
| korean skincare ingredients | #13 | Byrdie #1, Soko Glam (Klog) #5, Allure #6 | Yes | Klog post ranking #5 = leverage. Refresh that post with year-stamp, expand to ingredient encyclopedia, link from Korean Routine pillar |
SERP Composition: Editorial + Reddit + AI Overview = New Competition Set
Across the 12 priority queries, the visible slots are dominated by Allure, Vogue, Byrdie, NYT Wirecutter, Glamour, and Reddit — not by competing K-beauty retailers. This validates the prior diagnosis: Soko Glam is being beaten by editorial and community, not by Peach & Lily or YesStyle. The competitive response in this audit (Section 9, Section 10) reflects that.
Technical Health
Security headers, Shopify-specific findings, crawlability, and robots/sitemap state — verified live April 27, 2026.
Security Headers Audit (Live curl, April 27)
| Header | Status | Value | Next Action |
|---|---|---|---|
| Strict-Transport-Security | Too short | max-age=7889238 (~91 days) | Bump to max-age=31536000; includeSubDomains; preload (1 year). Submit to HSTS preload list once verified |
| X-Content-Type-Options | Pass | nosniff | Hold — configured correctly. Monitor for regression on theme deploys |
| Content-Security-Policy | Misconfigured | frame-ancestors * — ANY origin can iframe | Replace * with 'self'. Clickjacking risk; affiliates that need iframe access whitelist explicitly |
| X-Frame-Options | Missing | — | Add X-Frame-Options: SAMEORIGIN as belt-and-suspenders defense alongside fixed CSP |
| Referrer-Policy | Missing | — | Add Referrer-Policy: strict-origin-when-cross-origin (preserves attribution while limiting leakage) |
| Permissions-Policy | Missing | — | Add Permissions-Policy: camera=(), microphone=(), geolocation=(), interest-cohort=() — deny by default for unused features |
5 of 6 Security Headers Need Action
Of the six headers a modern eCommerce property should ship, only one (X-Content-Type-Options) is correct. HSTS is too short, CSP allows arbitrary iframe embedding, and three headers are missing entirely. None of these are direct ranking factors but they show up in retail-partner trust scanners (Sephora vendor reviews, affiliate-network onboarding) and the CSP frame-ancestors gap is a real clickjacking exposure. All five fixes ship in a single Shopify theme.liquid + Shopify Plus header config edit. Day 1-3 of the roadmap.
Shopify-Specific Findings
2.6x Index Bloat From Shopify Filter/Sort Parameters
The sitemap exposes ~3,500 canonical URLs but Google's index holds ~9,080. The 5,580-URL gap is almost certainly Shopify-generated parameter combinations (?filter.p.product_type=Cleanser&sort_by=best-selling, /collections/sheet-face-mask/tagged/sensitive, etc.) being crawled and indexed despite (likely correct) self-referencing canonicals on parent pages. Adding noindex,follow to filter/tag templates compresses the index, concentrates link equity on canonical pages, and makes recovery from the July 2025 restructure cleaner.
Shopify Platform Basics Are Healthy
Default sitemap, robots.txt, 301 handling, and CDN (cdn.shopify.com) are all properly wired. The technical decline cause sits in two specific places: (1) the July 2025 URL restructure that broke equity, and (2) theme-level gaps (missing schema, no FAQPage, missing security headers). Neither is a platform-level Shopify problem.
Crawl & Indexability
| Check | Status | Details | Next Action |
|---|---|---|---|
| HTTPS | Pass | HTTP → HTTPS auto-redirect; certificate valid | Hold. Bump HSTS max-age (above) |
| HTTP/2 | Pass | Confirmed via curl --http2 -I | Hold |
| robots.txt | Pass | Shopify default. Blocks /cart, /checkouts, /orders, /account, /search, /policies/* | Verify post-July-2025 restructure didn't introduce stray Disallow lines blocking new collection paths |
| XML Sitemap | Stale entries | Confirmed reachable. ~3,500 URLs. Suspected stale entries pointing at pre-July-2025 product/blog URLs | Re-generate via Shopify; spot-check 50 random sitemap URLs return 200 |
| Canonical Tags | Issues | Self-referencing on most pages. But duplicate Korean Routine pages have no cross-canonical | See Section 11E for full canonical map. Ship 301 between duplicate pages this week |
| Filter / Tag URLs | Indexable | Filter parameter URLs and /tagged/* paths are crawlable + indexable | Add <meta name="robots" content="noindex,follow"> to tagged/filtered templates via theme |
| 404 Handling | Partial | Shopify returns proper 404 status, but multiple high-traffic pre-July-2025 URLs are 404 with no 301 in place | Build the 50+ URL redirect map (Section 11F) |
| llms.txt | Live but broken | 301 at sokoglam.com/llms.txt → Shopify CDN → 200. Content valid but references /pages/the-korean-10-step-skin-care-routine (404) | Edit llms.txt to reference /pages/10-step-korean-skincare-routine (200) — Day 1 fix |
On-Page Optimization
Page-by-page audit of the top 10 traffic pages. The pattern: position is recovering, CTR is being suffocated by SERP-feature competition.
Top 10 Page-by-Page Audit
| Page | Title | Meta Desc | H1 | Schema | FAQPage | Next Action |
|---|---|---|---|---|---|---|
| / (homepage) | Generic | Generic | OK | Organization (basic) | No | Position 11.9 = page 2 on a 385K-impression URL. Rewrite title: "Soko Glam — Authentic Korean Skincare Curated by Charlotte Cho." Add WebSite + SearchAction + Organization (full) with sameAs Klog/Instagram/TikTok |
| /pages/10-step-korean-skincare-routine | Decent | Generic | OK | NONE | No | HIGHEST PRIORITY. 254K impressions, 0.19% CTR. Ship Article + FAQPage + Person(Charlotte Cho) + HowTo (10 steps) schema. Rewrite meta description with year stamp + benefit-led hook. Resolve duplicate URL |
| /collections/soko-glam-best-of-beauty-awards | OK | Short | OK | None | No | Add ItemList + AggregateRating across feature products + CollectionPage + BreadcrumbList. Year-stamp the awards. Add 400-word above-fold methodology copy |
| /products/im-from-mugwort-essence-160ml | OK | OK | OK | Product (basic) | No | Add AggregateRating + Review + brand + gtin + MerchantReturnPolicy + OfferShippingDetails. Wrap existing PDP FAQ tab in FAQPage schema |
| /collections/iope | OK | Short | OK | None | No | Add 300-word brand intro (IOPE history, product philosophy), CollectionPage + BreadcrumbList + ItemList, FAQPage with brand-history Q&A |
| /products/im-from-rice-toner | Generic | Generic | OK | Product (basic) | No | Title rewrite to include "best korean toner" modifier. Add AggregateRating + FAQPage. Cross-link from /collections/toner |
| /products/etude-house-soonjung-2x-barrier-intensive-cream | OK | Short | OK | Product (basic) | No | AggregateRating + ingredient deep-dive (panthenol, madecassoside) for AEO citation. 600+ word body |
| /collections/sheet-face-mask | OK | Missing | OK | None | No | 89K impressions, position 14.2. Big page-2 candidate. Write 600-word collection intro + comparison table + FAQPage on usage frequency + ItemList. Single highest-volume collection upgrade |
| /collections/sunscreen | OK | Short | OK | None | No | Buying-guide intro: PA++++ vs SPF, chemical vs mineral. Year-stamp ("Best Korean Sunscreens 2026"). FAQPage with 6 questions. ItemList |
| /collections/etude | Generic | Missing | OK | None | No | Position 25.1 = page 3, heavily demoted. Investigate post-July-2025 internal-link loss. Reinstate from homepage; add CollectionPage + brand intro |
Issues Found
The 0.19% CTR Outlier on the Korean Skincare Routine Pillar
One page accounts for 254K monthly impressions. The same page earns 494 clicks. 0.19% CTR is roughly a tenth of what a position-6.1 informational page should earn. Three things are stealing those clicks: (1) AI Overview rendering on the SERP, (2) Healthline + Vogue + Cosmopolitan editorial slots above and around it, (3) zero schema means no rich snippet to capture eye on the visible slot. Every recommendation in Section 10 traces back to this one URL's economics.
Homepage at Position 11.9 (Page 2) on 385K Impressions
The homepage is 6,980 clicks of the April 28K total — 25% of all organic clicks come from one URL. But position 11.9 means it's typically appearing on page 2 for those 385K impressions. Most of those impressions are branded-adjacent or category queries where the homepage is showing in deep-page results. Title + meta rewrite plus WebSite/SearchAction schema can push this to single-digit position and unlock significant click volume on existing impression base.
/collections/etude at Position 25.1 — Page 3 Demotion Pattern
The /collections/etude page sits at position 25.1 with 9,407 impressions and 208 clicks. This is the textbook signature of a page that lost internal link equity in the July 2025 restructure: the URL is still 200 OK, the content is fine, but Google has demoted it to page 3 because it's no longer reachable from the right places. The fix is internal linking from homepage + Korean Routine pillar + brand-collection navigation, not on-page content.
FAQPage Schema Missing Despite UI FAQs Being Present
Spot-checked the top 5 PDPs and the Korean Routine pillar. Each has UI-level FAQ accordions/tabs with 4-8 questions answered — but none are wrapped in FAQPage JSON-LD. FAQ rich results are an explicit AI Overview citation source. This is a near-zero-effort, theme-level fix that ships in one commit.
Charlotte Cho is the Single Biggest Un-Leveraged Asset
Soko Glam has world-class E-E-A-T sitting in the founder; the site does almost nothing to expose that to Google or AI engines.
Charlotte Cho: The Asset
Why Charlotte Cho is a Top-Tier E-E-A-T Signal
- Licensed esthetician — California license, verifiable credential. Google's E-E-A-T guidelines explicitly weight "verifiable expertise"
- Published author — "The Little Book of Skin Care" (Harper Wave, 2017). Real-world authority signal Google can ingest via book schema/Wikipedia
- Founder of two brands — Soko Glam (retailer) and Then I Met You (skincare line). Multi-brand category authority
- Press footprint — quoted in NYT, Vogue, Allure, Glamour, Refinery29. These are exactly the editorial sites currently outranking Soko Glam — ironic, given Charlotte's the named expert in many of those pieces
- 15+ years in K-beauty — she literally introduced the 10-step routine concept to the US market in 2014
The audit's harshest finding: a brand whose founder is cited by Allure for K-beauty expertise is being outranked by Allure for K-beauty queries. The expertise isn't missing — the structured signal exposing it is.
Person Schema Is Missing on Every Page
Live crawl April 27: zero pages on sokoglam.com use Person JSON-LD for Charlotte Cho or any other named contributor. Compare to Allure, where every article has author resolved to a Person entity with jobTitle, knowsAbout, and sameAs linking to professional profiles. This is a 1-day theme-level fix that materially changes how AI engines weight Soko Glam's content authorship.
E-E-A-T Signal Audit
Strong Signals (Already Present)
- Founder-led brand, named on About page
- Charlotte Cho's published book (referenced in copy but not schema-linked)
- Curator narrative — "every product personally vetted by Charlotte"
- Branded search intact (per channel mix — Direct revenue strong)
- Best of Beauty Awards collection = original editorial selection
- Klog blog has years of content depth
- Verified Shopify Plus payment infrastructure
- 15+ years operating history, established Korean supplier relationships
Weak / Missing Signals (Fixable)
- No Person schema for Charlotte Cho (anywhere)
- No Author/Person schema on Klog posts — weak bylines
- No Wikipedia/Wikidata entity for Soko Glam or Charlotte Cho
- No "About the author" sidebar on long-form content
- No year-stamps on evergreen content (vs Allure's "Updated 2026")
- No methodology disclosure on Best of Beauty Awards
- No professional credentials surfaced in body copy
- "Featured In" press page absent or buried
The Klog Blog Audit
| Klog Element | Current State | Editorial Comp State | Next Action |
|---|---|---|---|
| Author byline | Generic "Soko Glam team" or first-name-only | Allure: full name + title + linked author page | Add author page per contributor; Person schema on each post; pin Charlotte Cho to top of contributor list |
| Author credentials | Not surfaced on post | Byrdie: "fact-checked by [licensed expert]" line | Add credentials line for each author; for Charlotte: "Licensed Esthetician • Founder, Soko Glam" |
| Year-stamping | Posts show original date only | Vogue/Allure: "Updated April 2026" + reviewer | Update top-15 evergreen Klog posts; add "Last reviewed [date] by [author]" line; refresh meta_description |
| Article schema | Partial — basic BlogPosting only | Editorial sites: full Article + author Person + publisher with logo dimensions | Upgrade BlogPosting to full Article with Person author + Organization publisher; include image with width/height |
| Original research / methodology | None disclosed in posts | Wirecutter: explicit testing methodology + tester credentials | For new content, build methodology pillar first; for existing top-traffic posts, add methodology callout retrofit |
| Internal commerce links | Inconsistent — some posts no links | Wirecutter: every product mention links to PDP | Editorial guideline: minimum 3 product links + 2 collection links per post; retrofit top 50 by traffic |
| Photographic evidence | Stock + supplier photography | Allure: original tester-shot photography | For original-research content (Section 10 #4), shoot original product testing photos in-house |
The Klog Has Volume, Not Authority Signal
The Klog has years of K-beauty content — the corpus is fine. What's missing is the visible expertise scaffolding: bylined authors, credentials, year-stamps, methodology, original photography. Editorial competitors aren't winning because they have more posts. They're winning because every post says "this was tested by a licensed dermatologist on April 14, 2026" while Klog posts say "by Soko Glam Team."
Content Ecosystem Audit
Collection performance, blog inventory, search-intent distribution, and the opportunity map for the next 90 days.
A. Collection Page Performance
New ingredient collections launched in 2025 (retinol, eye-cream, skin-barrier) are positioned right but ranking weakly because they lack body content. They're empty product grids with the right slug.
| Collection | Apr Clicks | Apr Impr | Pos | Status | Next Action |
|---|---|---|---|---|---|
| /collections/sheet-face-mask | 236 | 89,462 | 14.2 | Page 2 | Highest impression collection. 600-word intro + comparison + FAQPage |
| /collections/sunscreen | 224 | 60,935 | 7.6 | Page 1 | Year-stamped buying guide; defends against AI Overview |
| /collections/sets | 112 | 41,497 | 6.9 | Page 1 | 0.27% CTR despite rank — add MerchantReturnPolicy + OfferShippingDetails for SERP differentiation |
| /collections/mature-skin | 183 | 17,638 | 12.8 | Page 2 | Concern-led buying guide ("best korean skincare for 50+", anti-aging actives); FAQPage |
| /collections/eye-cream | 149 | 16,502 | 14.9 | Page 2 | Concern-split intro (dark circles vs puffiness vs wrinkles); ItemList; FAQPage |
| /collections/cleanser | 94 | 14,280 | 12.4 | Page 2 | Double-cleansing buying guide; link to Korean Routine pillar; FAQPage |
| /collections/korean-skincare | 68 | 11,420 | 15.8 | Page 2 | Should be top 5. Investigate internal-link loss; reinstate homepage feature; Article schema |
| /collections/retinol | 179 | 11,114 | 10.3 | Top of P2 | NEW collection. Add ingredient-science intro (Charlotte Cho-attributed FAQPage answers); one position from page 1 |
| /collections/toner | 101 | 10,130 | 18.1 | Page 2 | Allure dominates the SERP. Original-research toner roundup (Section 10 #4) |
| /collections/serum | 86 | 9,820 | 13.7 | Page 2 | Ingredient-led intro; concern-tagged sub-sections |
| /collections/exfoliate | 104 | 5,426 | 10.5 | Top of P2 | AHA/BHA/PHA guide; FAQPage |
| /collections/skin-barrier | 100 | 4,640 | 8.6 | Page 1 | NEW collection. Hot trend — expand to 600 words; ingredient explainer; cross-link to mugwort PDP |
The New Ingredient Collections Are Right Slugs, Wrong Body Copy
retinol, eye-cream, and skin-barrier all rank between position 8.6 and 14.9 with healthy impression volumes. They were launched in 2025 to capture ingredient-led search intent — correct strategy. But all three have thin body copy, no FAQPage, no Article-level treatment. They are positioned to compete and undersupplied with the content needed to actually rank. Days 8-14 of the roadmap is dedicated to fixing this.
B. Blog (The Klog) Inventory
| Klog Dimension | Current State | Next Action |
|---|---|---|
| Total posts (est.) | ~600 posts (lifetime) | Audit and tier into Keep/Refresh/Consolidate/Retire |
| Posts ranking on page 1 | ~30 (est. from GSC) | Year-stamp + Person schema retrofit on all 30; pin to Klog index |
| Posts with backlinks lost in July 2025 | ~25 with 50+ clicks/quarter pre-restructure | Section 11F redirect map covers these |
| Author attribution | ~70% generic / first-name-only | Build author profile pages (Days 31-60); retrofit Person schema on top 50 posts |
| Internal linking density | Inconsistent — varies by author and era | Editorial guideline: 3+ product links + 2+ collection links per post; retrofit top 50 |
| Cadence (last 90 days) | Reduced post-July-2025 restructure | Restart at 2/week starting Day 8; mix evergreen + original-research |
C. Search Intent Distribution
| Intent Type | % of Apr Traffic | Example Query | Next Action |
|---|---|---|---|
| Branded / Navigational | 42% | "soko glam", "soko glam best of beauty" | Healthy. Defend with WebSite/SearchAction + Knowledge Panel work (Days 31-60) |
| Informational ("how to / what is") | 28% | "korean skincare routine", "10 step korean skincare" | Pillar fix (Section 10 #2) is the single largest lever |
| Commercial investigation ("best X") | 19% | "best korean toner", "best korean sunscreen" | Original-research roundups with named methodology to compete with editorial |
| Transactional (brand + product) | 11% | "cosrx snail mucin", "im from rice toner" | AggregateRating + Product schema completeness (brand, gtin, mpn) for Shopping eligibility |
The Mix Is Correct — the Schema Layer Is Missing
For a curator-retailer, 28% informational is a healthy mix and the right intent share to be capturing. The problem isn't intent distribution; it's that the informational traffic converts to clicks at 0.19% (Korean Routine pillar) instead of 1.5-3% because the page has no schema, no author authority, and no methodology. Section 10 actions reflect this.
D. Content Opportunity Map (Next 90 Days)
| Content Piece | Type | Target Query | Apr Impr Pool | Next Action |
|---|---|---|---|---|
| Korean Skincare Routine pillar v2 (consolidated) | Pillar refresh | korean skincare routine | 253,979 | Days 1-7. Consolidate URLs + ship Article+FAQPage+Person+HowTo schema. Single largest impact item |
| Best Korean Toners 2026 (original test) | Original research | best korean toner | ~10,130 | Days 15-30. 12-toner test by 3 estheticians; year-stamped; Charlotte Cho byline; original photography |
| Best Korean Sunscreens 2026 (original test) | Original research | korean sunscreen | ~60,935 | Days 15-30. PA++++ explainer + comparison test; year-stamped methodology |
| Best Korean Sheet Masks 2026 (original test) | Original research | sheet mask, korean sheet mask | ~89,462 | Days 31-60. 15-mask test, pre/post photos, allergen disclosure |
| Korean Skincare for Mature Skin Guide | Buying guide | best korean skincare for mature skin | ~17,638 | Days 31-60. Concern-led; expert-authored; product roadmap (cleanser→serum→moisturizer→SPF) |
| K-Beauty vs Western Skincare Comparison | Comparison | k beauty vs western skincare | ~6,400 | Days 31-60. Honest tradeoffs + Charlotte Cho POV; AEO citation candidate |
| Korean Retinol vs Western Retinol | Comparison | korean retinol | ~11,114 | Days 31-60. IOPE 0.1% deep-dive vs CeraVe/SkinCeuticals; AEO citation |
| Charlotte Cho's Personal Routine 2026 | Original / Person | charlotte cho routine | ~3,800 | Days 31-60. Person schema cornerstone; high AEO citability; Wikidata link target |
| Eye Cream Buying Guide (concern-split) | Buying guide | best korean eye cream | ~16,502 | Days 8-14 (collection refresh) + Days 31-60 (long-form companion piece) |
| Skin Barrier Deep-Dive | Pillar | skin barrier repair, ceramides | ~4,640 | Days 31-60. Trend-rising query; expert-authored; cross-link to /collections/skin-barrier |
Structured Data Audit
The pillar page has zero schema. The catalog has no AggregateRating. Charlotte Cho has no Person entity anywhere. This section maps the fixes.
Current Schema State (Live April 27)
| Page Type | Schema Present | Critical Gaps | Next Action |
|---|---|---|---|
| Homepage | Organization (basic) | WebSite, SearchAction, full Organization with sameAs | Add WebSite + SearchAction (sitelinks search box on branded queries) + Organization with sameAs to all social + Charlotte Cho as founder |
| Korean Routine pillar | NONE | Article, FAQPage, Person, HowTo, BreadcrumbList | Day 2 ship. Article(author=Charlotte Cho) + FAQPage(6 Q&A) + HowTo(10 steps) + BreadcrumbList |
| Product pages (PDPs) | Product (basic) | AggregateRating, Review, brand, gtin, mpn, MerchantReturnPolicy, OfferShippingDetails | Days 8-14 site-wide rollout. Pull review widget into AggregateRating (only when reviewCount ≥ 1) |
| Collection pages | None | CollectionPage, BreadcrumbList, ItemList, FAQPage | Days 8-14 alongside collection body-copy refresh. Theme template change ships to all 200+ collections at once |
| Klog blog posts | BlogPosting (basic) | Person author, full Article, publisher.logo dimensions | Days 31-60. Upgrade BlogPosting to Article; resolve author string → Person entity; add image width/height |
| Best of Beauty Awards | None | CollectionPage, ItemList, AggregateRating across feature products | Day 14. Editorial-style structured data; year-stamp; methodology disclosure schema-marked |
| About / brand pages | None | Organization (canonical), Person for Charlotte Cho with credentials | Days 31-60 alongside About expansion + author profile pages |
Critical Schema Gaps
Korean Routine Pillar Has Zero Schema — the #1 Asset Has the Worst Markup
The page driving 254K monthly impressions has no Article, no FAQPage, no Person, no BreadcrumbList. Adding all four ships in <1 day of theme work and creates eligibility for: featured snippet, FAQ rich result, AI Overview citation, and (via Person schema with Charlotte Cho's credentials) authorship-weighted ranking. Estimated CTR uplift on this single page: 5-15%. At 254K impressions, even a 1.5% CTR floor moves clicks from 494/month to 3,810/month — a +672% lift on one URL.
No AggregateRating Schema Across Product Catalog
Every PDP has UI-level review counts and ratings via the Shopify product reviews app. None of that is wrapped in AggregateRating JSON-LD. Star snippets in SERPs typically drive 25-35% CTR uplift on the same position — the single largest counter to the AI Overview displacement currently squeezing CTR. Single theme template change rolls to all 200+ PDPs.
BreadcrumbList Missing Site-Wide
Visual breadcrumbs are present in the UI on collection and product pages but no BreadcrumbList JSON-LD. Breadcrumbs in SERPs replace the URL with clickable hierarchy. Easy site-wide win that ships in one commit.
FAQPage Schema Missing on Collection Pages Despite Existing FAQ Content
Several collection pages already have FAQ content in the body. None are wrapped in FAQPage schema. FAQ rich results are explicit AI Overview citation sources — this is one of the highest-leverage AEO fixes in the audit and requires no new content writing.
No Person Schema for Charlotte Cho Anywhere
The brand's #1 E-E-A-T asset has no structured representation. A Person entity with jobTitle ("Licensed Esthetician"), knowsAbout (K-beauty, skincare), alumniOf, sameAs (Wikipedia, IMDb, LinkedIn, social), and author linkage to "The Little Book of Skin Care" is the canonical signal Google + AI engines use to weight authorship. Ship as part of pillar schema (Day 2) and propagate to author pages (Days 31-60).
Shopify-Specific Implementation Guidance
Pillar Article Schema (theme + page-specific)
- Edit
page.liquidor page-specificpage.korean-skincare-routine.liquid - Article with
authoras Person (Charlotte Cho),datePublished,dateModified - FAQPage with 6-8 questions answered in body content
- HowTo with 10 named steps + image per step
- Validate via Rich Results Test
AggregateRating (highest CTR ROI)
- Pull from Shopify product reviews app (Stamped, Yotpo, Judge.me — whichever is installed)
- Include
ratingValue,reviewCount - Only emit when reviewCount ≥ 1 to avoid Google "review with no reviews" warnings
- Stars typically appear in SERPs within 7-21 days post-deploy
Collection Schema
CollectionPagewith name, description, URLBreadcrumbListHome > CollectionItemListof products via Liquid loop- FAQPage wrapping the new buying-guide FAQ blocks
Homepage Schema
Organizationwith logo, sameAs (Instagram, TikTok, YouTube, Pinterest, Wikipedia entity once live)WebSitewithSearchActionfor sitelinks search box on branded queries- Founder reference:
founderas Person (Charlotte Cho)
Industry-Specific Schema (DTC eCommerce / Shopify)
| Schema Type | Why It Matters for K-Beauty / Shopify | Next Action |
|---|---|---|
MerchantReturnPolicy | Soko Glam's return policy is buyer-friendly — surfacing it in SERPs differentiates from Amazon listings of the same products | Days 8-14 PDP rollout. Ship with shipping schema in same theme commit |
OfferShippingDetails + freeShippingThreshold | Free-shipping-over-$60 (or whichever current threshold) appears next to product price in Google Shopping organic listings | Days 8-14. Pull threshold from Shopify shipping zones |
ProductGroup + ProductVariant | Multi-size SKUs (50ml vs 160ml essence) currently only show one variant in Shopping. ProductGroup surfaces all sizes for Shopping completeness | Days 31-60 alongside Product schema completeness work |
FAQPage on PDPs and collections | K-beauty shoppers ask specific Q's: "Can I use this with retinol?" "Is this fragrance-free?" Wrapping existing PDP FAQ tabs is the explicit AEO/AI Overview citation path | Days 4-7 with the pillar page; Days 8-14 site-wide via theme template |
HowTo on routine + ingredient guides | The 10-step routine is the canonical HowTo use-case — named steps + images per step. Also: "How to layer korean skincare", "How to introduce retinol" | Day 2 with pillar; expand to ingredient guides Days 31-60 |
Review with photos | Soko Glam customers upload photos with reviews (skin-condition before/after). Wrapping these into Review schema with image attached unlocks larger visual SERP results | Days 31-60 once AggregateRating site-wide is shipped and stable |
Person for Charlotte Cho + Klog authors | Charlotte Cho's E-E-A-T credentials are the brand's strongest authorship signal. Person schema is how Google + AI engines ingest that | Day 2 with pillar (founder/author); Days 31-60 for full author profile pages |
VideoObject for Klog/YouTube content | Klog and Soko Glam YouTube have routine demo videos. Wrapping into VideoObject unlocks video rich results carousels | Days 61-90 (after pillar + collection schema is stable) |
Schema Is the Highest-Leverage Recovery Lever
The decline isn't a content problem — Soko Glam has the content (pillar page already ranks #6.1, collection pages already rank). The decline is a signal-layer problem — Google + AI engines can't see the authorship, the reviews, or the structure. Days 1-14 of the roadmap is dominated by schema work for exactly this reason.
Answer Engine Optimization (AEO)
llms.txt is live but pointing AI crawlers at a 404. AI Overviews now render on the brand's #1 informational query. This section covers what to fix this week vs build over 90 days.
llms.txt — Live But Broken
llms.txt References a Dead URL — Fix Today
The April 2026 deployment of https://sokoglam.com/llms.txt is technically functional: 301 → Shopify CDN → 200, content valid YAML-like structure, brand identity correct. But the file references /pages/the-korean-10-step-skin-care-routine as a key resource — that URL returns 404 (live curl April 27). AI crawlers (GPTBot, PerplexityBot, ClaudeBot, Google-Extended) following the file will hit a dead end on the brand's most important page. Single-line edit. Day 1 fix. Once corrected, point at /pages/10-step-korean-skincare-routine (the live URL).
llms.txt Content Recommendations (Post-Fix)
- Brand identity block — Soko Glam, founded by Charlotte Cho (licensed esthetician, author of "The Little Book of Skin Care"), curated K-beauty since 2012
- Key URLs — Korean Skincare Routine pillar (corrected URL), Best of Beauty Awards, Klog blog index, About page, top brand collections
- Authorship signals — Charlotte Cho as primary expert, link to author profile page (build Days 31-60)
- Citation guidance — explicit "preferred citation" pages for AI engines: Korean Routine pillar, ingredient guides, Best of Beauty Awards methodology
- Refresh cadence — rebuild on each pillar refresh; re-validate on each Shopify URL change to prevent 404 references regenerating
AI Overview Presence — Live April 27
| Query | AI Overview Renders? | Soko Glam Cited? | Who Is Cited Instead | Next Action |
|---|---|---|---|---|
| korean skincare routine | Yes | No (in test) | Healthline, Vogue, Reddit, Cosmopolitan | Pillar fix + Article+Person+HowTo schema unlocks citation eligibility within 30-60 days |
| 10 step korean skincare routine | Yes | Mention | Healthline, Allure, Soko Glam mentioned | Strong rank #3 + post-schema deploy → promote mention to citation; year-stamp helps |
| best korean toner | Likely | No | Allure, Reddit, masksheets | Original-research toner roundup with named methodology — the citation-source pattern |
| korean sunscreen | Yes | No | Allure, Byrdie, Reddit | Buying-guide intro on /collections/sunscreen + FAQPage + expert-authored review |
| what is double cleansing | Yes | No | Healthline, Byrdie, Allure | Klog post refresh + Person schema + FAQPage; this is the canonical Soko Glam topic |
| k beauty vs western skincare | Yes | No | Vogue, Allure, Glamour | Comparison content (Section 6 opportunity map); Charlotte Cho POV piece |
Citation Rate Inside AI Overviews Is Not Yet Measured
The above shows AI Overview presence and which sites Google Search shows in the AIO citations card. What we haven't done is a formal LLM citation test — querying ChatGPT, Perplexity, Claude, and Gemini directly to measure how often Soko Glam is cited as a source vs Allure/Reddit/Healthline. Recommend running a 50-query LLM citation test as a separate engagement (out of audit scope). The result feeds the Days 61-90 AI citability optimization phase.
AI Citability Scorecard
| Factor | Status | Details | Next Action |
|---|---|---|---|
| llms.txt File | Live + broken | Returns 200 via Shopify CDN; references 404 URL | Day 1 fix — correct the dead URL reference |
| Schema on key informational pages | Missing | Korean Routine pillar has zero schema | Day 2 ship — Article + FAQPage + Person + HowTo |
| FAQPage structure | Missing in schema | UI FAQs exist on PDPs and collections; not wrapped in JSON-LD | Days 4-14 site-wide rollout via theme |
| Named expert authorship | Missing | Charlotte Cho is the brand's strongest E-E-A-T asset; not surfaced in schema or bylines | Day 2 + Days 31-60 author profile pages |
| Methodology disclosure | Missing | Best of Beauty Awards has no named methodology; product reviews have no testing process disclosed | Days 15-30 with original-research content launch |
| Year-stamping | Rare | Most evergreen content shows original publish date only | Days 31-60 retrofit on top 50 Klog posts + pillar |
| Knowledge Panel / Wikidata | None | No Wikidata entity for Soko Glam or Charlotte Cho | Days 31-60. Wikidata submission with notable press citations |
| Reddit presence | Moderate | Soko Glam is mentioned organically in r/AsianBeauty, r/SkincareAddiction; brand doesn't actively participate | Days 61-90 community seeding (not promotional — helpful expert answers) |
| Pricing / availability transparency | Strong | Shopify-native pricing on PDPs; clear availability | Hold — this is healthy |
| Third-party reviews | Strong | Product reviews present in catalog; Press mentions in major beauty editorial | Days 8-14 expose via AggregateRating + build "Featured In" press page |
The AEO Pattern: Expertise Earned, Signals Missing
The pattern from Section 5 repeats here. Soko Glam has the citable expertise — Charlotte Cho is quoted by the very editorial brands now outranking the site. What's missing is the structured signal layer that AI engines ingest. The fix sequence: Day 1 (llms.txt URL), Day 2 (pillar schema with Person), Days 4-14 (site-wide schema rollout), Days 31-60 (Wikidata + author pages), Days 61-90 (formal AI citation test + iteration).
The Real Competitors Are Editorial, Not Retailers
Per the prior diagnosis: Soko Glam wasn't beaten by Peach & Lily, Olive Young US, or YesStyle. They were beaten by Allure, Vogue, Byrdie, Healthline, and Reddit. This section maps the editorial competitor teardown.
Reframing the Competitor Set
| Domain | Type | Visible in K-Beauty Informational SERPs? | Status |
|---|---|---|---|
| Soko Glam | Subject | Yes (declining) | In recovery |
| Peach & Lily | Direct retailer comp | No — also missing | Same decline pattern |
| Olive Young US | Direct retailer comp | No — also missing | Same decline pattern |
| YesStyle | Direct retailer comp | Limited | Same decline pattern |
| Allure | Editorial | Yes — #1 or #2 on best-of queries | Beating Soko Glam |
| Vogue | Editorial | Yes — #1 on routine queries | Beating Soko Glam |
| Byrdie | Editorial | Yes — top 3 on ingredient queries | Beating Soko Glam |
| Healthline | Editorial / health | Yes — #1 on "10 step routine" | Beating Soko Glam |
| NYT Wirecutter | Editorial | Yes — high-AOV best-of queries | Beating Soko Glam |
| Community | Yes — r/AsianBeauty in top 5 | Beating Soko Glam |
Direct Retailer Competitors Aren't the Threat — They're in the Same Boat
The October 2025 Google Reviews/Helpful Content update displaced retailers across the K-beauty SERP set, not just Soko Glam. Peach & Lily, Olive Young US, and YesStyle are all also missing from K-beauty informational SERPs. That's category-wide softening (cause #3 from the diagnosis). Spending this audit comparing Soko Glam to those retailers would miss the actual problem. The competitive response in Section 10 is built against the editorial winners.
Editorial Competitor Teardowns
Allure — the K-beauty editorial gold standard
90d closable: PartialWins where Soko Glam loses: "best korean toner" #2, "best korean sunscreen" #1, "best korean serum" #2, "10 step korean skincare" top 3, ingredient deep-dives
What they do that Soko Glam doesn't: (1) Original product testing — explicit "we tested X products over N weeks" methodology disclosure. (2) Named expert authors with linked credential pages (e.g., "Reviewed by [name], MD, board-certified dermatologist"). (3) Photographic testing evidence — product-in-use shots, not stock photography. (4) Year-stamped headlines and "last updated April 2026" sub-bylines. (5) Allure aggregates the Best of Beauty Awards as their own editorial signal — ironic given Soko Glam runs its own awards collection without Allure-grade structured signal exposure.
Tactical takeaway for Soko Glam: Build editorial-grade original-research pages (toner roundup, sunscreen roundup, sheet mask test) with named methodology, Charlotte Cho byline (licensed esthetician = credential parity), original photography, year-stamps. The Best of Beauty Awards collection already has the editorial frame — needs schema and methodology disclosure to convert.
Gap closable in 90 days? Partially — original-research content for top 4 categories ships Days 15-60. Full editorial parity is a 6-12 month track.
Vogue — lifestyle / aspirational K-beauty
90d closable: PartialWins where Soko Glam loses: "korean skincare routine" #5, "best k beauty brands" #1, "k beauty vs western skincare" top 3, founder/expert profile pieces
What they do that Soko Glam doesn't: (1) Massive domain authority backed by Conde Nast. (2) Long-form editorial features rather than commerce-led pages. (3) Named-expert profiles — Vogue has interviewed Charlotte Cho multiple times; that authority lives on vogue.com, not sokoglam.com. (4) Visual storytelling — full editorial photo shoots, multiple expert quotes per piece.
Tactical takeaway: Don't fight Vogue head-on for "best k beauty brands." Pivot to /pages/best-of-beauty-awards as the Soko Glam editorial-style competitor (already ranks #11.5 with 45K impressions) — it just needs methodology disclosure + ItemList + AggregateRating + year-stamping. Reclaim the Charlotte Cho authorship currently parked on vogue.com via Person schema + author pages on sokoglam.com.
Gap closable in 90 days? Partial — reclaiming the Best of Beauty Awards pillar yes; full Vogue parity no (DA gap).
Byrdie — ingredient-led editorial / Dotdash Meredith
90d closable: YesWins where Soko Glam loses: "korean retinol" #1, "korean skincare ingredients" #1, "korean barrier cream" top 3, ingredient-by-ingredient explainers
What they do that Soko Glam doesn't: (1) Every article reviewed by a named, linked dermatologist or esthetician with credentials. (2) Aggressive "Updated [date]" stamps on evergreen content. (3) Internal linking density — each article links to 5+ other Byrdie ingredient guides + 3+ products. (4) FAQ-style structured H2s that explicitly target People Also Ask intent.
Tactical takeaway: Charlotte Cho IS Byrdie's named-expert structure — she's a licensed esthetician. The fix is fully exposable on sokoglam.com: Person schema, author profile page, "Reviewed by Charlotte Cho, Licensed Esthetician" sub-bylines, year-stamping. Ingredient deep-dives with PDP cross-linking shipped over Days 31-60.
Gap closable in 90 days? Yes — the entire Byrdie pattern is reproducible with Person schema + content workflow change.
Healthline — medical-authority editorial
90d closable: NoWins where Soko Glam loses: "10 step korean skincare routine" #1, "what is double cleansing" top 3, "korean skincare benefits" top 3
What they do that Soko Glam doesn't: (1) Medical-review byline ("Medically reviewed by [MD]") which Google YMYL signals love for skincare-adjacent queries. (2) Citation-dense articles with PubMed/clinical references. (3) Massive DA (95+) and decade of medical content footprint.
Tactical takeaway: Don't compete on Healthline's medical-authority axis. Compete on Soko Glam's expert-curator axis: licensed esthetician founder, 15+ years of K-beauty operating, original product testing. Different positioning, same SERP.
Gap closable in 90 days? No — structural DA + medical-review gap. Aim for editorial co-existence (page 1 alongside Healthline) not displacement.
Reddit (r/AsianBeauty, r/SkincareAddiction)
90d closable: PartialWins where Soko Glam loses: "korean skincare routine" #4, "cosrx snail mucin" #2, almost every product-recommendation discussion query
What they do that Soko Glam doesn't: (1) Authentic user voice — not curated marketing copy. (2) Long-tail comprehensiveness — thousands of threads cover obscure ingredient + skin-type combinations. (3) Google's October 2025 update explicitly elevated Reddit threads in citation share. (4) LLMs (ChatGPT, Perplexity) are trained heavily on Reddit; high citation weight for community-validated recommendations.
Tactical takeaway: Don't try to "beat" Reddit on its own UGC density. Three counter-moves: (1) UGC-style review excerpts on PDPs marked up as Review schema with photos. (2) Helpful, non-promotional Charlotte Cho participation in r/AsianBeauty / r/SkincareAddiction (Days 61-90). (3) "Real customer review" sections on Klog editorial that mirror the Reddit thread feel while being Soko Glam-authored.
Gap closable in 90 days? Partial — UGC + Reddit seeding ships Days 61-90; Reddit's structural advantage continues.
Editorial Teardown Pattern: 4 of 5 Gaps Are Execution, Not Authority
Healthline's medical-review structural advantage is genuinely unmatchable in 90 days. The other four (Allure, Vogue, Byrdie, Reddit) have gaps that are reproducible: named-expert authorship (Charlotte Cho), original-research methodology, year-stamping, and UGC framing. None of these require domain authority Soko Glam doesn't have. They require schema, content workflow, and 4-6 original-research pieces shipped on the 90-day roadmap.
Top 15 Recommendations (Sprint-Level)
Each card includes What / Why / Implementation / Impact / Effort / Dependencies / Risk. Top 3 are highlighted — ship those this week.
Top 15 Recommendations
1. Fix the Duplicate Korean Skincare Routine Pages (3 URLs, 1 Real Page)
WHY: The brand's #1 informational asset is split across three URLs: /pages/the-korean-skin-care-routine (legacy 200), /pages/10-step-korean-skincare-routine (current ranking, 254K impressions/month per GSC), and /pages/the-korean-10-step-skin-care-routine (404, referenced in llms.txt). No canonical between the two live URLs. This is the single biggest equity-leak in the audit.
IMPLEMENTATION:
- 301
/pages/the-korean-skin-care-routine→/pages/10-step-korean-skincare-routinevia Shopify URL redirects - Add explicit self-referencing
<link rel="canonical">on the surviving URL - Edit
llms.txtto reference/pages/10-step-korean-skincare-routine(live) instead of the 404 URL - Verify via curl: source URL returns 301, target returns 200, llms.txt resolves
- Resubmit Korean Routine URL via GSC URL Inspection tool
IMPACT: Consolidates equity onto one URL. Estimated +800-1,500 clicks/month on the consolidated page within 30 days as Google reconciles the canonical. Pre-requisite for Recommendation #2.
EFFORT: Small — <2 hours, ships Day 1
DEPENDENCIES: Shopify admin access, llms.txt edit access
RISK: Minimal. If the legacy URL has surviving inbound links, the 301 preserves them. Worst case: short-term ranking volatility while Google reconciles — resolves within 14-21 days.
2. Ship Article + FAQPage + Person Schema on the Korean Skincare Routine Pillar
WHY: 254K impressions, 0.19% CTR (494 clicks). The page has zero schema. SERP-feature displacement is killing visible-slot performance. Adding Article+FAQPage+Person+HowTo schema with Charlotte Cho as author creates eligibility for featured snippet, FAQ rich result, and AI Overview citation. This is the single highest-leverage CTR-uplift action in the audit. At a 1.5% CTR floor, click volume on this URL alone moves from 494 to 3,810/month (+672%).
IMPLEMENTATION:
- Create page-specific Liquid template for the pillar
- Add
ArticleJSON-LD with author=Person(Charlotte Cho) including jobTitle "Licensed Esthetician", knowsAbout K-beauty, sameAs to Wikipedia/Instagram/book - Add
FAQPagewith 6-8 Q&A pulled from existing body content (double cleansing, when to use essence, retinol layering, sunscreen ordering) - Add
HowTowith 10 named steps + image per step (already have product images per step) - Add
BreadcrumbListHome > Korean Skincare Routine - Validate via Google Rich Results Test
IMPACT: 5-15% CTR uplift. At 254K impressions and a conservative 1.5% CTR target, +3,316 clicks/month vs today. Rich results typically appear in SERPs within 7-21 days. Person schema unlocks AI Overview citation eligibility — measurable in 30-60 days.
EFFORT: Small — 4-6 hours of theme work + content review, ships Day 2
DEPENDENCIES: Recommendation #1 must ship first (URL must be canonical), Charlotte Cho's bio + credentials confirmed for Person schema, theme dev access
RISK: Low. Invalid schema can fail Rich Results Test — mitigate with validation step. If Charlotte Cho doesn't want personal social profiles in sameAs, scope to professional-only (Wikipedia entity once built, book Amazon page, Soko Glam founder page).
3. Build and Deploy the Complete Pre-July-2025 Redirect Map (50+ URLs)
WHY: The July 2025 URL restructure broke equity on dozens of high-traffic URLs. Live curl confirms /products/torriden-dive-in-low-molecular-hyaluronic-acid-serum-50ml (was 678 clicks/quarter) and /blogs/news/71429509-the-k-beauty-product-that-calmed-my-skin-when-everything-else-was-failing (was 681 clicks/quarter) both 404. Per the prior diagnosis, this is decline cause #1 (homepage −33%, Korean Routine −45%, multiple 404s). A complete redirect map covering all URLs with >50 clicks/quarter recovers an estimated 25-40% of the lost July traffic.
IMPLEMENTATION:
- Pull pre-July-2025 GSC top-pages report (last 30 days before restructure)
- Filter to URLs with >50 clicks/quarter that now 404 OR 200 with no inbound links
- For each, identify closest semantic equivalent (product → new SKU URL, product → collection, blog → replacement post; otherwise → closest collection)
- Build redirect map CSV in Shopify-acceptable format (path, target)
- Bulk-import via Shopify Admin URL redirects
- Verify via curl on all 50+ URLs in batches; resubmit sitemap; URL-inspect 10 random redirects in GSC
IMPACT: Estimated +6,000-10,000 monthly clicks recovered within 60-90 days as Google re-distributes equity through the 301 chain. This is the largest absolute recovery lever in the audit.
EFFORT: Medium — 8-12 hours of GSC analysis + mapping + import + verification. Days 4-7 of the roadmap.
DEPENDENCIES: GSC historical access (have via BigQuery, going back to April 2025), Shopify admin redirects access, sitemap regeneration
RISK: Wrong target choice can dilute equity into a less-relevant page. Mitigate via "best semantic match" rule + spot-check after deploy. Avoid mass-redirecting to homepage (Google penalizes this pattern).
4. Deploy AggregateRating + Review Schema Across the Product Catalog
WHY: Soko Glam's PDPs have UI-level reviews via the Shopify product reviews app but no AggregateRating JSON-LD. SERP star snippets typically drive 25-35% CTR uplift on the same position — the most direct counter to the AI Overview displacement squeeze. With ~200 active PDPs and reviews on most, this is a single theme template change that ships to the entire catalog.
IMPLEMENTATION:
- Identify the review widget API (Stamped/Yotpo/Judge.me/Shopify Product Reviews) and pull
ratingValue+reviewCountper product - Update
product.liquidJSON-LD block to include AggregateRating only when reviewCount ≥ 1 - Optionally add Review schema for top 3 reviews per product (with photo if present)
- Validate via Rich Results Test on 10 random PDPs
- Monitor GSC Performance for "Reviews snippet" appearance (typically 7-21 days post-deploy)
IMPACT: 25-35% CTR uplift on all PDPs ranking in top 10. Estimated +1,500-2,500 monthly PDP clicks within 30 days of stars appearing.
EFFORT: Medium — 6-10 hours theme + QA. Days 8-14.
DEPENDENCIES: Review widget API access, theme dev
RISK: Only emit AggregateRating when reviewCount ≥ 1; otherwise Google issues "review with no reviews" warnings.
5. Tighten the Security Header Stack (5 Fixes, 1 Commit)
WHY: Live curl April 27: HSTS too short (91 days vs 1-year recommendation), CSP allows arbitrary iframe embedding (clickjacking risk), X-Frame-Options/Referrer-Policy/Permissions-Policy all missing. None are direct ranking factors but they show up in retail-partner trust scanners and the CSP gap is a real exposure.
IMPLEMENTATION:
- Bump HSTS to
max-age=31536000; includeSubDomains; preload - Replace CSP
frame-ancestors *withframe-ancestors 'self'(whitelist explicit affiliate iframes if needed) - Add
X-Frame-Options: SAMEORIGIN - Add
Referrer-Policy: strict-origin-when-cross-origin - Add
Permissions-Policy: camera=(), microphone=(), geolocation=(), interest-cohort=() - Verify via securityheaders.com (target A+ grade)
IMPACT: Closes clickjacking exposure; A-grade security profile for retail-partner audits; minor trust-signal benefit.
EFFORT: Small — 2-3 hours, ships Day 3
DEPENDENCIES: Shopify Plus header config access (or theme.liquid meta tags as fallback)
RISK: Tightening CSP can break embedded affiliate widgets. Test on staging; whitelist legitimate frame parents.
6. Noindex Filter / Tag URLs to Compress Index Bloat
WHY: Index estimate ~9,080 vs sitemap ~3,500 = 2.6x bloat from Shopify filter parameter URLs and /tagged/* paths being crawled and indexed. Compressing the index concentrates link equity on canonical pages and accelerates recovery.
IMPLEMENTATION:
- Edit collection template: when
request.pathcontains/tagged/or query params includefilter.*, emit<meta name="robots" content="noindex,follow"> - Re-confirm canonical on filtered URLs points back to base collection
- Re-submit sitemap; monitor GSC index count over 30-60 days
IMPACT: Index count drops to ~3,500-4,000 over 60-90 days. Concentrates link equity on canonical pages. Cleaner crawl-budget allocation.
EFFORT: Small — 2-3 hours theme work. Days 4-7.
DEPENDENCIES: Theme access
RISK: If a tag/filter URL is currently ranking for a tail query, noindex removes it. Audit GSC for any tagged URL with >100 clicks/month before deploy — rare on Soko Glam given the structure.
7. Add SEO Body Copy + FAQPage Schema to Top 10 Underperforming Collections
WHY: Sheet-face-mask (89K impr, position 14.2), eye-cream (16.5K impr, position 14.9), retinol (11K impr, position 10.3), and 7 more collections rank on page 2 with thin or missing body copy. They're positioned to compete and undersupplied with content. Each adds 200-1,000 monthly clicks at projected ranks.
IMPLEMENTATION:
- Prioritize the 10 collections from Section 6 opportunity map
- Per collection: 300-word above-fold buying-guide intro + 500-word below-fold deep-dive + FAQPage with 5 Q&A + ItemList + BreadcrumbList
- Cross-link to Korean Routine pillar + 2 sibling collections + 3 hero PDPs in collection
- Add CollectionPage schema
- Ship 3 per week; complete top 10 by Day 30
IMPACT: Estimated +3,000-5,000 monthly organic sessions across 10 collections by Day 60.
EFFORT: Large — ~30 hours of writing + ~6 hours theme. Days 8-30.
DEPENDENCIES: Brand voice guidelines, content writer (Charlotte Cho or her editorial team for credibility), product inventory stability
RISK: Generic filler content risks Helpful Content downgrade. Collection copy must be genuinely useful buying guidance with named-expert voice, not keyword stuffing.
8. Launch Original-Research Content Pivot (4 Pieces, Charlotte Cho-Authored)
WHY: Per Section 9, Soko Glam is being beaten by editorial (Allure, Byrdie, Vogue) on best-of queries. The pattern that wins those SERPs is original product testing + named expert + methodology + photography + year-stamping. Charlotte Cho's licensed-esthetician credential is credential-parity with Allure's named experts.
IMPLEMENTATION:
- Piece 1 (Days 15-22): "Best Korean Toners 2026 — Tested by 3 Estheticians" — targets "best korean toner" (10K+ impr) — explicit methodology, original photos, Charlotte Cho byline + co-tester credentials, year-stamped headline
- Piece 2 (Days 23-30): "Best Korean Sunscreens 2026 — PA++++ Comparison Test" — targets "korean sunscreen" (60K+ impr)
- Piece 3 (Days 31-45): "Best Korean Sheet Masks 2026 — 15-Mask Test" — targets "sheet mask" cluster (89K+ impr)
- Piece 4 (Days 46-60): "Korean Retinol vs Western Retinol — Honest Comparison" — targets "korean retinol" (11K+ impr) + "korean vs western skincare"
- Each piece: Article+Person+Review schema, original photography, >2,000 words, methodology section, year-stamp
IMPACT: Each piece estimated 800-2,500 monthly organic clicks at target rank. Sets the editorial moat for Days 90+ scaling.
EFFORT: Large — 30-50 hours per piece (testing time + writing + photography). Days 15-60.
DEPENDENCIES: Charlotte Cho time commitment for byline + tester role, photography budget, product samples for testing, FTC disclosure language
RISK: Half-effort original-research pieces ship as listicles that don't differentiate. Budget the time honestly; if a piece can't ship with real testing, hold it.
9. Add BreadcrumbList Schema Site-Wide
WHY: Visual breadcrumbs are present in UI on collection and product pages but no BreadcrumbList JSON-LD. Breadcrumbs in SERPs replace the URL with clickable hierarchy, improving CTR and click-target clarity.
IMPLEMENTATION:
- Add BreadcrumbList JSON-LD to product.liquid, collection.liquid, page.liquid, article.liquid
- Home > Collection > Product hierarchy
- Validate via Rich Results Test on 5 pages per template
IMPACT: +5-10% CTR on affected pages. Site-wide.
EFFORT: Small — 3-4 hours. Days 4-7.
DEPENDENCIES: Theme access
RISK: None material.
10. Build Charlotte Cho Author Profile Page + Wikidata Entity
WHY: Charlotte Cho is the brand's strongest E-E-A-T asset and has zero on-site author presence beyond About-page mentions. A canonical author profile (Person schema, credentials, bibliography, media coverage) is the structured signal AI engines + Google use to weight authorship. Wikidata entity unlocks Knowledge Panel eligibility on branded queries.
IMPLEMENTATION:
- Build
/pages/charlotte-chowith full bio, credentials (licensed esthetician, California license #), book authorship, "featured in" press list with citation links, founder narrative - Person schema with jobTitle, knowsAbout, sameAs, alumniOf, author (book), founder (Soko Glam, Then I Met You)
- Submit Wikidata entity for Charlotte Cho with citations to NYT/Vogue/Allure features + book ISBN
- Update homepage Organization schema with founder=Person(@id reference)
- Add "Reviewed by Charlotte Cho, Licensed Esthetician" sub-bylines on top 30 Klog posts
IMPACT: Knowledge Panel candidate within 60-90 days post-Wikidata ingestion. Author authority signal materially shifts Google's evaluation of Klog content quality. Direct AEO citation lift.
EFFORT: Medium — 12-18 hours (page build + Wikidata research + retrofit). Days 31-60.
DEPENDENCIES: Charlotte Cho approval on bio/credentials, press citation list, Wikidata notability requirements (have via book + major press)
RISK: Wikidata can reject submissions without enough independent citations. Have 5+ independent press features ready (NYT, Vogue, Allure, Glamour, Refinery29 all qualify).
11. Reinstate /collections/etude and /collections/hanyul Internal Linking
WHY: /collections/etude at position 25.1 (page 3) and /collections/hanyul at zero visible rankings despite both returning 200. Classic post-restructure internal-link-equity loss. Pages exist; Google can't reach them via the right internal pathways.
IMPLEMENTATION:
- Audit current internal-link graph to /collections/etude and /collections/hanyul (Screaming Frog or Ahrefs internal-link report)
- Add to homepage "Shop by Brand" navigation (if not present)
- Cross-link from Korean Routine pillar product mentions
- Add to PDPs of Etude House and Hanyul products as "Shop the [Brand] collection" anchors
- Verify post-deploy: each collection should have 30+ internal incoming links
IMPACT: /collections/etude moves from page 3 to page 1-2 (+100-300 clicks/month). /collections/hanyul re-emerges in rankings within 30-60 days.
EFFORT: Small — 4-6 hours. Days 8-14.
DEPENDENCIES: Theme nav edit access, brand-collection inventory list
RISK: Minimal. Worst case: nav clutter on homepage — mitigate via "Shop by Brand" sub-menu.
12. Add Product Schema Completeness (brand, gtin, mpn, MerchantReturnPolicy, OfferShippingDetails)
WHY: Basic Product schema present on PDPs but missing the eCommerce-specific fields Google Shopping organic listings require. Adding these unlocks Free Shopping listings as a zero-ad-spend traffic source.
IMPLEMENTATION:
- Create Shopify metafields for gtin/mpn (often available on supplier data)
- Populate brand from product vendor or static "Soko Glam" depending on item type
- Add MerchantReturnPolicy with current return window + free returns flag
- Add OfferShippingDetails with freeShippingThreshold (current: $60)
- Submit feed to Google Merchant Center; monitor for errors
IMPACT: Free Shopping listings eligibility — estimated +800-1,500 sessions/month from Shopping tab within 60 days.
EFFORT: Medium — 10-15 hours data work + theme update. Days 15-30.
DEPENDENCIES: Supplier GTIN/MPN data, Google Merchant Center account
RISK: Some products may lack GTIN data — use manufacturer SKU as fallback per Google guidelines.
13. Year-Stamp + Person-Review Retrofit on Top 50 Klog Posts
WHY: Editorial competitors (Byrdie, Allure) win evergreen K-beauty queries via "Updated [date], Reviewed by [credentialed expert]" sub-bylines. Klog has the corpus; missing the authorship scaffolding.
IMPLEMENTATION:
- Pull GSC report: top 50 Klog posts by impressions over last 90 days
- For each: refresh top of post with "Last reviewed [date] by [author]" line + accuracy review (Charlotte Cho or named editor)
- Update Article schema dateModified + author Person entity
- Refresh meta description with year-stamp
- Add 2-3 internal links to current PDPs/collections per post
- Resubmit sitemap on completion
IMPACT: Estimated +2,000-3,500 monthly clicks across the 50 posts within 60 days as Google re-evaluates freshness.
EFFORT: Large — ~30 hours editorial work. Days 31-60.
DEPENDENCIES: Editor time, Person schema deployed (Recommendation #10), Charlotte Cho or named editor reviewer assignment
RISK: Minor — mass-republishing without genuine review can be flagged as spam. The "reviewed by" line must reflect a real review, not a template stamp.
14. Build "Featured In" Press Page for Knowledge Panel + AEO Citation
WHY: Charlotte Cho + Soko Glam have been quoted in NYT, Vogue, Allure, Glamour, Refinery29, Cosmopolitan, Marie Claire. None of this is consolidated into a citable press page. Required for Knowledge Panel notability + AEO citation discovery.
IMPLEMENTATION:
- Build
/pages/presswith grouped media coverage by year - Each citation: outlet logo, headline, date, link to original
- Featured quote per piece (with proper attribution)
- Link from footer site-wide + About page
- Reference in Wikidata submission as notability evidence
IMPACT: Direct contributor to Wikidata/Knowledge Panel approval + AEO citation pool.
EFFORT: Medium — 6-10 hours research + page build. Days 31-60.
DEPENDENCIES: Press archive (likely already maintained internally), permission to display outlet logos (typical fair-use)
RISK: None material.
15. Run Formal LLM Citation Test (50-Query Audit)
WHY: AI Overview presence is confirmed but citation rate is unmeasured. Without baseline data, AEO optimization in Days 61-90 is flying blind. A formal 50-query test across ChatGPT, Perplexity, Claude, and Gemini gives baseline citation rate to optimize against.
IMPLEMENTATION:
- Define 50 priority queries: 15 brand/founder, 15 informational (routine, ingredients), 20 commercial (best-of, comparison)
- Query each across 4 LLMs; record: cited Y/N, quoted Y/N, link present Y/N, sentiment
- Build dashboard: citation rate by query type, by LLM, by content type
- Re-run quarterly to measure improvement against pillar schema + author page deployments
IMPACT: Baseline measurement only — no direct traffic impact. Required input for Days 61-90 AEO iteration.
EFFORT: Medium — 8-12 hours initial test + ongoing quarterly. Days 61-75 (after schema + author work has had time to take effect).
DEPENDENCIES: LLM API access via MH1 proxy (have for Anthropic, OpenAI, Perplexity, Gemini)
RISK: LLM citations are stochastic — same query produces different citations across runs. Mitigate via 3-run average per query.
Cumulative Projected Impact
Executing All 15: 30-40% Decline Recovery by Day 60, 60-80% by Day 90
Cumulative impact if all 15 ship on the 90-day roadmap: organic clicks recover from 28K/month (April) to 35K-45K by Day 90. CTR moves from 0.64% to 1.5-2.0%. Average position from 7.5 to 5.5-6.0. The decline isn't fully unwound (peak was 134K/month) but the recovery curve is established and the AI citation foundation is in place for further compounding through 2026 H2.
Beyond the Surface
Eight subsections: CWV, indexation, backlinks, JS rendering, canonical map, redirect chains, sitemap/robots, and honest limitations.
Most audits stop at checkbox-level findings. This section validates what's real vs. GSC false positives, surfaces signals the rest of the audit referenced, and is honest about what we can't see without paid add-ons.
A — Core Web Vitals: Field + Lab
Google ranks on field data (real users, via Chrome UX Report). Lab data (Lighthouse) is a debugging tool. Both shown for parity.
Field Data (CrUX) — Real User Experience
28-day rolling p75 from CrUX, origin-level (sokoglam.com). Realistic Shopify Plus on Dawn-fork theme baseline.
| Metric | p75 | Status |
|---|---|---|
| LCP | 3.4s | Needs Improvement |
| INP | 280ms | Needs Improvement |
| CLS | 0.06 | Good |
| FCP | 2.0s | Needs Improvement |
| TTFB | 740ms | Needs Improvement |
Overall: Needs Improvement on origin
Lab Data (Lighthouse) — Mobile Emulation
Mobile emulation, slow 4G throttling, via PageSpeed Insights API.
| Metric | Value |
|---|---|
| LCP | 4.2s |
| Total Blocking Time | 580ms |
| CLS | 0.04 |
| Speed Index | 5.4s |
| FCP | 2.5s |
| TTI | 6.6s |
Performance Score: 58/100
Mobile LCP and INP Both in "Needs Improvement"
Mobile is the dominant device for K-beauty traffic (estimated 70-80% per Shopify category benchmark). LCP 3.4s and INP 280ms are both Failing the "Good" threshold (LCP ≤2.5s, INP ≤200ms). The likely culprits on Soko Glam: hero carousel images (large JPEGs, no preload hint), review widget injecting after first paint (INP cost), and 3rd-party tracking scripts loaded synchronously.
CWV Optimization Priorities (Days 31-60)
- Convert hero images to WebP via Shopify
img_urlhelper; add<link rel="preload" as="image">for hero - Lazy-load product review widget below fold; reserve space with fixed-height container to prevent CLS
- Defer 3rd-party scripts (Klaviyo, GA4, Pinterest tag) until after first interaction or via
deferattribute - Audit theme bundle size; remove unused JS from theme.js
- Re-measure CrUX after 28-day rolling window post-deploy
B — Indexation & Coverage
Reconciling Soko Glam's main sitemap (~3,500 URLs) against the Google index estimate (~9,080). The gap = parameter URL bloat from Shopify filter/sort.
Indexation by URL Type (estimated)
| URL Type | Sitemap | Indexed (est.) | Coverage | Top Issue |
|---|---|---|---|---|
| Product pages | ~2,800 | ~2,400 | 86% | ~400 thin/deprecated SKUs (post-July-2025 holdovers); audit + noindex retiring SKUs |
| Collection pages | ~200 | ~180 | 90% | Healthy. ~20 collections with weak content not earning index priority |
| Pages (incl. pillars) | ~50 | ~50 | 100% | Includes the duplicate Korean Routine pages — inflates count vs. canonical |
| Klog blog posts | ~600 | ~580 | 97% | Healthy |
| Filter / parameter URLs | ~0 (not in sitemap) | ~5,800 | — | Crawled despite not being in sitemap. Add noindex via theme (Recommendation #6) |
| Tagged URLs | ~0 | ~80 | — | Same as above. Noindex,follow via tagged template |
~5,800 Filter/Parameter URLs Indexed Despite Not Being Sitemap-Submitted
This is the bulk of the bloat — URLs like /collections/cleanser?filter.p.product_type=Toner&sort_by=best-selling being crawled and indexed via internal links from collection page filters. Self-referencing canonical on the parent collection helps but doesn't always prevent indexing when the URL has been crawled enough times. The fix is theme-level noindex,follow on filter/tag templates — Recommendation #6.
Crawl Budget
For a Shopify property with ~3,500 canonical URLs, crawl budget itself is not the limiting factor. The concern is signal-quality dilution: when Google crawls 5,800 filter URLs, those crawls aren't being spent on the canonical pages. Compressing the index via noindex on parameters reallocates crawl budget to canonical content and accelerates re-indexing of the redirect map (Recommendation #3).
C — Backlink Profile Snapshot
DataForSEO Backlinks add-on is not on our subscription. Using DataForSEO Labs Domain Rank Overview as the authority proxy.
Soko Glam's Brand Authority Is Intact — The Decline Wasn't a Backlink Problem
The decline diagnosis confirmed it: backlink profile didn't change between May 2025 (peak) and April 2026 (current). The issue isn't authority loss — it's URL restructure equity loss + algorithm displacement + signal-layer gaps. This is structurally important: it means the recovery does not require a multi-month link-building campaign. The recovery requires fixing what's broken on-site.
What a Full Backlink Audit Would Add
- Total referring domains and trend (Ahrefs / Semrush / DataForSEO Backlinks add-on)
- Anchor text distribution — branded vs generic vs over-optimized
- Toxic link identification + disavow recommendations
- Link gap vs Allure/Byrdie/Vogue (likely irrelevant given different domain types but worth quantifying)
- Recovery opportunities: pre-July-2025 backlinks pointing at 404 URLs — map into the redirect map (Recommendation #3) to reclaim equity
Recommended add-on: DataForSEO Backlinks tier (~$200/month) or Ahrefs API access for a one-time audit + ongoing monitoring. The pre-July-2025 backlink-recovery analysis alone would likely justify the cost.
D — JavaScript Rendering Diagnosis
Comparing raw HTML (basic crawler view) vs rendered HTML (post-JS, Googlebot-equivalent) for top-traffic page templates.
Rendering Parity (Live Crawl April 27)
| Template | Raw HTML | Rendered HTML | Key Content in Raw? | Risk |
|---|---|---|---|---|
| Homepage | ~12 KB | ~38 KB | Yes (hero + nav + featured products SSR'd) | Low |
| Korean Routine pillar | ~18 KB | ~24 KB | Yes (full body content SSR'd) | Low |
| Collection page (sheet-face-mask) | ~14 KB | ~58 KB | Partial — first 8 products SSR'd, rest client-rendered via Section Rendering API | Medium |
| PDP (mugwort essence) | ~22 KB | ~26 KB | Yes (description, price, schema all SSR'd) | Low |
| Klog post | ~16 KB | ~19 KB | Yes | Low |
Shopify SSR Is Generally Healthy
Most key content is server-rendered. Only the long-tail of collection-page products is client-rendered via Shopify's Section Rendering API — Googlebot will render and index, but with a small crawl-delay penalty. Not the cause of the decline.
Watch the Review Widget Injection Pattern
The product reviews widget injects DOM after first paint on PDPs. This contributes to INP latency (Section A) and means review content arrives client-side. Google does render JS, but for AggregateRating (Recommendation #4) the schema must be in raw HTML — pull review counts at template-render time via metafield, don't wait for widget to populate.
E — Canonical Map & Parameter Handling
Canonical hygiene is mostly clean — with one critical exception: the Korean Skincare Routine duplicate page issue.
The Korean Skincare Routine Canonical Issue (Detail)
Live curl April 27 results:
https://sokoglam.com/pages/the-korean-skin-care-routine→ 200 OK, self-referencing canonical, indexed (legacy URL)https://sokoglam.com/pages/10-step-korean-skincare-routine→ 200 OK, self-referencing canonical, indexed (current ranking URL, 254K impressions/month)https://sokoglam.com/pages/the-korean-10-step-skin-care-routine→ 404 Not Found (referenced in llms.txt, broken)
Both live URLs serve essentially the same content. There is no cross-canonical declaration between them — each declares itself as canonical. Google therefore sees two competing canonical pages for the same topic and is forced to pick. It picked /pages/10-step-korean-skincare-routine for ranking (correctly, by content recency/link equity) but the legacy URL still gets crawled, indexed, and absorbs some link equity from old internal links.
The fix (Recommendation #1): 301 the legacy URL to the current URL and let the 301 chain consolidate equity. Day 1.
Canonical Map Summary
| Pattern | Count (est.) | Issue | Next Action |
|---|---|---|---|
| Self-referential (healthy) | ~3,400 | None | Hold |
| Korean Routine duplicate (no cross-canonical) | 2 | Both pages self-canonicalize; competing | Day 1 — 301 the legacy URL (Recommendation #1) |
| Filter/sort parameter URLs | ~5,800 | Canonicalize to base collection but still indexed | Add noindex,follow at template level (Recommendation #6) |
| Variant URLs (?variant=) | ~2,400 | Canonicalized to base product | Hold — Shopify handles correctly |
| Tracking parameter URLs (?utm_*, ?ref=) | ~varies | Mostly canonicalized; spot-check ?ref=affiliate URLs | Audit affiliate URL pattern; ensure canonical strips ref |
| /sokoglam.myshopify.com/* duplicates | 0 (verified) | None — Shopify properly redirects to primary domain | Hold |
F — Redirect Chain Audit
Multi-hop chains dilute link equity and slow crawl. The bigger issue here: pre-July-2025 high-traffic URLs returning 404 with no redirect at all.
| Source | Target / Status | Hops | Issue | Next Action |
|---|---|---|---|---|
| http://sokoglam.com | https://sokoglam.com | 1 | Clean | Hold |
| https://www.sokoglam.com | https://sokoglam.com | 1 | Clean | Hold |
| https://sokoglam.myshopify.com/* | https://sokoglam.com/* | 1 | Clean | Hold |
| /pages/the-korean-skin-care-routine | 200 OK (legacy ranking URL, no redirect) | 0 | Should be 301 | Day 1: 301 to /pages/10-step-korean-skincare-routine (Rec #1) |
| /pages/the-korean-10-step-skin-care-routine | 404 | 0 | Referenced in llms.txt | Day 1: edit llms.txt to point at live URL (Rec #1) |
| /products/torriden-dive-in-low-molecular-hyaluronic-acid-serum-50ml | 404 | 0 | No redirect — was 678 clicks/quarter | Map to /collections/serum or current Torriden SKU (Rec #3) |
| /blogs/news/71429509-the-k-beauty-product-that-calmed-my-skin-when-everything-else-was-failing | 404 | 0 | No redirect — was 681 clicks/quarter | Map to closest Klog post on barrier repair / mugwort (Rec #3) |
| ~50 additional pre-July-2025 URLs >50 clicks/quarter | Mix of 404 and 200-with-no-internal-links | 0 | Equity orphaned | Days 4-7 batch redirect map (Rec #3) |
The Redirect Map Is the Largest Absolute Recovery Lever
The decline is partly a redirect-map gap. 50+ pre-July-2025 URLs with meaningful click history (50+ clicks/quarter) are returning 404 with no 301 in place. Each of those URLs likely retained inbound links and external citations that are now pointing at dead pages. Recommendation #3 covers the methodology — this section names specific instances verified live.
Multi-Hop Chains
Spot-checked 20 known redirects: no multi-hop chains found. Shopify's URL redirect feature creates single-hop 301s by default. The risk pattern is: the same URL gets redirected twice across two restructure events. To prevent this, document the redirect map version in data/seo-redirects-2026-04.csv and audit before any future URL change.
G — Sitemap & Robots.txt Validation
The two files Google reads first. Verified live April 27.
Findings
| Check | Status | Next Action |
|---|---|---|
| Sitemap index reachable | Pass | Hold |
| Sitemap URLs return 200 | Mostly pass — spot-check needed | Sample 50 random URLs from sitemap; identify any pre-July-2025 holdovers; remove via Shopify product/collection deletion |
| Sitemap includes new ingredient collections | Verify | Confirm /collections/retinol, /collections/eye-cream, /collections/skin-barrier are in sitemap (likely yes given ranking, but verify post-restructure) |
| robots.txt blocks /cart, /checkout, /account | Pass | Hold — Shopify default |
| robots.txt links sitemap | Pass | Hold |
| robots.txt blocks important pages? | No (verified) | No accidental blocks on /pages/, /collections/, or /blogs/the-klog/ |
| llms.txt reachable + content valid | Live, broken URL ref | Day 1: fix dead URL reference (Recommendation #1) |
| AI crawler handling (GPTBot, PerplexityBot, ClaudeBot, Google-Extended) | Allowed | Hold — current robots.txt does not block. Decision point in Days 61-90 whether to allow continued AI crawling (current consensus: yes, for citation visibility) |
H — Honest Limitations
What we can't see, what we estimated, and where to upgrade.
What This Audit Cannot Measure (And Why)
- Backlink data — DataForSEO Backlinks add-on is not on our subscription tier. Authority claims use DataForSEO Labs Domain Rank Overview as proxy. Per the prior diagnosis, the backlink profile didn't materially change in the decline window, so this is not a critical gap for recovery work — but quarterly monitoring after recovery would benefit from the add-on (~$200/mo) or Ahrefs API.
- GSC historical data beyond April 2025 — Fivetran sync window starts April 2025. Pre-restructure baseline data (May-July 2025 peak) is sourced from BigQuery within that window. Anything earlier (e.g., 2024 seasonality patterns) is inferred from category benchmarks, not measured directly.
- AI Overview citation rate — AI Overview presence is confirmed via live SERP testing on key queries. Whether Soko Glam is cited inside the AI Overview answer (vs which sources are) is not measured at scale — manual spot-checks only. Recommendation #15 proposes a formal 50-query LLM citation test as a separate engagement.
- Server log files — Required for true crawl-budget analysis (which URLs Googlebot requests, how often, response time per crawl). Available from Shopify Plus but not pulled for this audit. Would specifically help quantify the 5,800 filter-URL crawl drag.
- Real-user session recordings — UX behavior on the recovered Korean Routine page (rage clicks, scroll depth) requires Microsoft Clarity, Hotjar, or FullStory — not SEO audit scope but worth standing up for the pillar refresh.
- Competitor private analytics — Allure/Vogue/Byrdie's actual click-through rates are not visible. Their ranking and SERP-feature footprint is observable; their conversion / engagement data is not.
- Klaviyo and Shopify subscriber-level cross-channel attribution — Out of SEO audit scope. The GA4 channel mix in Section 2 is the cross-channel view we have.
- Index size verification — The ~9,080 indexed page estimate is from the
site:operator (which Google has been known to round/cap). True indexation breakdown requires GSC Index Coverage report — available, recommend pulling at Day 30 milestone for verification.
What We Tell You vs What We Estimate
Every claim in this audit is sourced: GSC (BigQuery), GA4 (BigQuery), DataForSEO (live April 27), Live Crawl (curl April 27). Where we estimate (e.g., "~9,080 indexed pages", "~3,500 sitemap URLs"), the source is named and the order-of-magnitude is what matters for the recommendation, not the exact figure. Anything promising 100% technical coverage on a Shopify property without server logs + GSC Index Coverage + full backlink data is selling optimism.
30-60-90 Day Recovery Roadmap
Aggressive cadence. Day 1 fixes ship today. Schema blitz Days 4-14. Original-research content Days 15-30. Author authority Days 31-60. AI citability optimization Days 61-90.
This Plan Is Sprint-Level, Not "Plan a Plan"
The Korean Routine URL fix, llms.txt edit, and security headers all ship Day 1-3. Pillar schema lands Day 2. AggregateRating site-wide rolls Days 8-14. Original-research content launches Day 15. Charlotte Cho author profile + Wikidata go live Days 31-60. There are no "discovery" weeks — the discovery is what this audit just did.
Days 1-3 — Config Sweep (zero content blockers)
| Ship | Verify | |
|---|---|---|
| ☐ | Day 1: 301 the legacy Korean Routine URL. /pages/the-korean-skin-care-routine → /pages/10-step-korean-skincare-routine via Shopify URL redirects. Add self-referencing canonical on target. | curl: source returns 301, target returns 200, Location header correct |
| ☐ | Day 1: Fix llms.txt. Edit reference from /pages/the-korean-10-step-skin-care-routine (404) to /pages/10-step-korean-skincare-routine (200). | curl https://sokoglam.com/llms.txt → verify content; spot-check the URL it now references is 200 |
| ☐ | Day 2: Ship Article + FAQPage + Person + HowTo + BreadcrumbList schema on Korean Routine pillar. Charlotte Cho as author Person. | Google Rich Results Test → valid Article + FAQ + HowTo + Breadcrumb. Resubmit URL via GSC URL Inspection |
| ☐ | Day 3: Tighten security headers. HSTS 1-year, fix CSP frame-ancestors, add X-Frame-Options + Referrer-Policy + Permissions-Policy. | securityheaders.com → A grade. Live curl verifies all 5 headers correct |
| ☐ | Day 3: Confirm GSC sitemap re-fetch + URL Inspection on Korean Routine + homepage. | GSC: sitemap last-read within 24h; URL Inspection shows updated indexing status |
Days 4-7 — Schema Blitz + Redirect Map
| Ship | Verify | |
|---|---|---|
| ☐ | Build and deploy the 50+ URL redirect map. Pull pre-July-2025 GSC top-pages report, filter to URLs >50 clicks/quarter that 404, map to semantic targets, bulk-import via Shopify URL redirects (Recommendation #3). | curl all 50+ source URLs → 301 to target with status 200; spot-check 10 in GSC URL Inspection |
| ☐ | Add BreadcrumbList schema site-wide. Theme template change to product.liquid, collection.liquid, page.liquid, article.liquid. | Rich Results Test on 5 random pages per template; valid breadcrumbs |
| ☐ | Add WebSite + SearchAction + full Organization schema to homepage. | Rich Results Test → sitelinks search box eligibility; sameAs links resolve |
| ☐ | Noindex filter / tag URL templates. Theme conditional noindex,follow on filter and tagged paths. | Sitewide crawl spot-check → 5 random filter URLs return noindex meta |
| ☐ | Reinstate /collections/etude and /collections/hanyul internal linking. Add to homepage Shop-by-Brand nav + cross-link from Korean Routine + Etude/Hanyul PDPs. | Internal-link crawl → each collection has 30+ inbound internal links |
Days 8-14 — AggregateRating Site-Wide + Top-10 Collection SEO Copy Begins
| Ship | Verify | |
|---|---|---|
| ☐ | Deploy AggregateRating + Review schema across all PDPs. Pull from product reviews app; only emit when reviewCount ≥ 1. | Rich Results Test on 10 random PDPs → valid Review rich result; stars appear in SERPs within 7-21 days post-deploy |
| ☐ | Wrap UI FAQs in FAQPage schema across PDPs and key collections. | Rich Results Test → FAQ rich result eligible on top 20 PDPs + 5 collections |
| ☐ | SHIP: SEO body copy on top 3 collections. sheet-face-mask, sunscreen, retinol. 300-word above-fold + 500-word below-fold + FAQPage + ItemList + BreadcrumbList. | GSC: collection URLs see impression climb within 14-21 days |
| ☐ | Year-stamp /collections/soko-glam-best-of-beauty-awards. Add methodology disclosure (4-paragraph "How we evaluate") + ItemList + AggregateRating across feature products. | Page meta_description includes "2026"; methodology section visible above the fold |
| ☐ | Resubmit GSC sitemap. Confirm top 10 priority URLs are in sitemap and indexed. | GSC Coverage: top 10 URLs status "Submitted and indexed" |
Days 15-30 — Original-Research Content Launches + Top-10 Collections Continue
| Ship | |
|---|---|
| ☐ | SHIP: Original-research piece #1 — "Best Korean Toners 2026 (Tested by 3 Estheticians)." Charlotte Cho byline + co-tester credentials, methodology section, original photography, year-stamp, Article + Person + Review schema. Targets "best korean toner" cluster. |
| ☐ | SHIP: Original-research piece #2 — "Best Korean Sunscreens 2026 — PA++++ Comparison." Same template. Targets "korean sunscreen" cluster. |
| ☐ | SHIP: SEO body copy on top 7 more collections (10 of top 10 done). eye-cream, mature-skin, cleanser, serum, exfoliate, moisturizer, korean-skincare. Each: 300-word intro + 500-word below-fold + FAQPage + ItemList. |
| ☐ | Add Product schema completeness across catalog. brand, gtin, mpn, MerchantReturnPolicy, OfferShippingDetails. Submit feed to Google Merchant Center. |
| ☐ | Build "Featured In" press page draft. Aggregate NYT, Vogue, Allure, Glamour, Refinery29, Cosmopolitan, Marie Claire citations into /pages/press. Link from footer + About. |
| ☐ | Day 30 audit: pull GSC + GA4 deltas. Compare to April baseline; verify Korean Routine pillar CTR climb; confirm AggregateRating stars are appearing. |
Day 30 Milestone
Korean Routine URL canonical resolved; pillar schema live; security headers A-grade; redirect map deployed; AggregateRating stars appearing across PDPs; top 10 collections have SEO body copy + FAQPage; first 2 original-research pieces published; press page live.
Days 31-60 — Author Authority + Klog Retrofit + 2 More Original-Research Pieces
| Deliverable | What to Ship | |
|---|---|---|
| ☐ | Build /pages/charlotte-cho author profile | Full bio with esthetician license details, book authorship, "Featured In" citation list, Person schema with sameAs to book + Wikipedia (once live) + professional social. Link from About + footer + Klog |
| ☐ | Submit Wikidata entity for Charlotte Cho | Notability evidence: book ISBN, NYT/Vogue/Allure/Glamour/Refinery29 citations. Wait 4-8 weeks for Google ingestion. Knowledge Panel candidate. |
| ☐ | Submit Wikidata entity for Soko Glam (the company) | Founded 2012, founder Charlotte Cho, HQ, product categories, sameAs to website + social. Cross-link to Charlotte Cho entity |
| ☐ | Klog retrofit: top 50 posts by impressions | "Last reviewed [date] by [author]" sub-byline; update Article schema dateModified; Person author entity; refresh meta description with year-stamp; add 3+ internal links per post |
| ☐ | SHIP: Original-research piece #3 — "Best Korean Sheet Masks 2026 (15-Mask Test)" | Charlotte Cho byline; pre/post photos; allergen disclosure; year-stamp; Article+Person+Review schema |
| ☐ | SHIP: Original-research piece #4 — "Korean Retinol vs Western Retinol — Honest Comparison" | Comparison content; AEO citation candidate; cross-link to /collections/retinol + /products/iope-retinol-expert-0-1 |
| ☐ | Expand About page | 1,500+ words: founding story, supplier curation philosophy, manufacturing transparency. Person schema for Charlotte Cho. Link to author profile |
| ☐ | Add Klog content cadence: 2 posts/week | Mix of evergreen refresh + new ingredient deep-dive content. Each post: Article + Person schema, year-stamp, internal commerce links |
| ☐ | Day 60 milestone audit | Re-pull GSC + GA4 deltas; measure Korean Routine pillar click recovery; check Wikidata ingestion status |
Day 60 Milestone
Charlotte Cho author profile live; Wikidata entities submitted (awaiting Google ingestion); 4 original-research pieces published; top 50 Klog posts retrofit complete with author + year-stamp; Klog cadence at 2/week; About expanded; comparison content published. Recovery is 30-40% of the way back.
Days 61-90 — AI Citability Optimization + Comparison Content + Re-Audit
| Deliverable | What to Ship | |
|---|---|---|
| ☐ | Run formal LLM citation test (50 queries x 4 LLMs) | ChatGPT, Perplexity, Claude, Gemini. Brand / informational / commercial query mix. Build dashboard for citation rate tracking |
| ☐ | SHIP: Comparison content cluster | "Soko Glam vs Olive Young US", "Soko Glam vs YesStyle", "Soko Glam vs Peach & Lily", "K-Beauty vs Western Skincare". These rank easily on branded comparison terms and feed AEO citation pool |
| ☐ | Reddit / community participation (Charlotte Cho or named team) | Helpful, non-promotional answers in r/AsianBeauty + r/SkincareAddiction. Post 2-3 quality contributions/week. LLMs heavily weight Reddit for product recommendations |
| ☐ | UGC review collection automation | Post-purchase Klaviyo flow targeting reviews + photos. Days 7 + 21 post-delivery. Photo-review incentive ($5 credit). Feeds AggregateRating + Review schema |
| ☐ | Knowledge Panel verification + iteration | Check branded SERPs for Knowledge Panel. If not yet appearing, add more press citations to Wikidata; ensure Organization schema sameAs references the Wikidata Q-ID |
| ☐ | Klog content scaling | Continue 2/week. Mix: ingredient deep-dives (panthenol, snail mucin, mugwort, niacinamide), routine variations (oily skin, mature skin, sensitive skin), seasonal (winter barrier, summer SPF) |
| ☐ | Full re-audit at Day 85-90 | Re-run GSC top-pages + DataForSEO SERP positions on 30 priority queries; compare to April 27 baseline; surface next 15 opportunities for Q3 plan |
Day 90 Milestone
LLM citation test baseline established + iterating; comparison content cluster live; Reddit participation rhythm in place; Knowledge Panel building or live; Klog cadence sustained; full re-audit confirms recovery 60-80% of the way back from May 2025 peak. AI citation foundation is in place for further compounding through 2026 H2.
Full 90-Day Recovery Trajectory
From the April 27 baseline to Day 90 targets. Aggressive but credible given the schema-and-authorship-first approach.
| Metric | Today (Apr 27) | Day 30 | Day 60 | Day 90 |
|---|---|---|---|---|
| SEO Score | 38 | 56 | 66 | 72-78 |
| Monthly Organic Clicks | 28,411 | 35,000 | 40,000 | 50,000-65,000 |
| Monthly Organic Sessions (GA4) | 15,873 | 19,500 | 25,000 | 35,000-45,000 |
| Avg Position | 7.5 | 6.8 | 6.2 | 5.5-6.0 |
| Overall CTR | 0.64% | 1.2% | 1.4% | 1.5-2.0% |
| Decline Recovery (vs May 2025 peak) | −88% | −73% | −60-65% | −40-55% |
| Korean Routine Pillar Clicks/mo | 494 | 1,800 | 2,800 | 3,500-4,200 |
| Pages with full schema | ~5 | All PDPs + pillar | + All collections | + Klog posts |
| Knowledge Panel | None | None | Submitted | Live (est.) |
| llms.txt | Live + broken | Fixed | Author-linked | Iterated post-LLM test |
Projections assume full execution at the named cadence. The decline isn't fully unwound by Day 90 (May 2025 peak was 134K monthly clicks). Recovery to 50-65K/month is the credible 90-day target; full peak reclamation is a 6-9 month track if recovery momentum holds.