← back to Dw Seo Report
Weekly George email of report (send_report.py + refresh.sh --email); launchd passes --email
e236ac60f113c901d0226754437ef94b9b486e66 · 2026-07-20 13:49:15 -0700 · steve
Files touched
M index.htmlM refresh.shA send_report.py
Diff
commit e236ac60f113c901d0226754437ef94b9b486e66
Author: steve <steve@designerwallcoverings.com>
Date: Mon Jul 20 13:49:15 2026 -0700
Weekly George email of report (send_report.py + refresh.sh --email); launchd passes --email
---
index.html | 2 +-
refresh.sh | 9 +++++++++
send_report.py | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 61 insertions(+), 1 deletion(-)
diff --git a/index.html b/index.html
index b50e018..8892703 100644
--- a/index.html
+++ b/index.html
@@ -1 +1 @@
-<!doctype html><html><head><meta charset='utf-8'><meta name='viewport' content='width=device-width,initial-scale=1'><title>DW Search Console Report</title><style>:root{--bg:#f6f3ee;--ink:#1c1a17;--muted:#6b6459;--line:#e0d9cd;--card:#fffdf9;--accent:#8a6d3b;--good:#2e7d5b;--bad:#b4472e}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}.wrap{max-width:1120px;margin:0 auto;padding:32px 22px 80px}h1{font-family:Georgia,serif;font-weight:600;font-size:30px;margin:0 0 4px}h2{font-family:Georgia,serif;font-weight:600;font-size:20px;margin:40px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}.sub{color:var(--muted);font-size:13px;margin:0 0 24px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.kpi{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.kpi .n{font-size:26px;font-weight:700;font-family:Georgia,serif}.kpi .l{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-top:2px}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:13px}th,td{padding:8px 11px;text-align:left;border-bottom:1px solid var(--line)}th{background:#efe9df;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:none}.tag{display:inline-block;font-size:11px;padding:1px 7px;border-radius:20px;background:#efe9df;color:var(--accent)}.opp{color:var(--good);font-weight:600}.warn{color:var(--bad);font-weight:600}.note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:12px 16px;font-size:13px;margin:12px 0}.bars{display:flex;align-items:flex-end;gap:14px;height:150px;padding:16px 8px 0;background:var(--card);border:1px solid var(--line);border-radius:10px}.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.bar .col{width:70%;background:linear-gradient(#b89968,#8a6d3b);border-radius:4px 4px 0 0}.bar .v{font-size:11px;font-weight:600;margin-bottom:3px}.bar .m{font-size:11px;color:var(--muted);margin-top:5px}.cann{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:4px 0;margin-bottom:14px}.cann h3{font-size:14px;margin:12px 16px 2px}.cann .pg{font-size:12px;color:var(--muted);padding:3px 16px;display:flex;justify-content:space-between}.rw{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:12px}.rw .pth{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--accent)}.rw .meta{font-size:12px;color:var(--muted);margin:2px 0 8px}.rw .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-top:6px}.rw .val{font-size:13px;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 9px;margin-top:2px}footer{margin-top:50px;color:var(--muted);font-size:12px;text-align:center}</style></head><body><div class='wrap'><h1>Designer Wallcoverings — Search Console Intelligence</h1><p class='sub'>Live Google Search Console · <b>sc-domain:designerwallcoverings.com</b> · 28-day window + 6-month trend · auto-refreshed weekly · generated Jul 20, 2026, 01:31 PM · source: GSC (free, $0)</p><div class='kpis'><div class='kpi'><div class='n'>957</div><div class='l'>Clicks (28d, queries)</div></div><div class='kpi'><div class='n'>49,214</div><div class='l'>Impressions (28d)</div></div><div class='kpi'><div class='n'>1.9%</div><div class='l'>Avg CTR</div></div><div class='kpi'><div class='n'>14.9</div><div class='l'>Avg position</div></div></div><h2>6-Month Trend</h2><div class='note'>Avg organic clicks/day <b class='warn'>down 57%</b> from Jan to Jul (10.4→11.0 avg position). Watch this reverse as the fixes land.</div><div class='bars'><div class='bar'><div class='v'>319</div><div class='col' style='height:100%'></div><div class='m'>Jan<br>pos 10.4</div></div><div class='bar'><div class='v'>318</div><div class='col' style='height:99%'></div><div class='m'>Feb<br>pos 9.7</div></div><div class='bar'><div class='v'>236</div><div class='col' style='height:73%'></div><div class='m'>Mar<br>pos 8.8</div></div><div class='bar'><div class='v'>183</div><div class='col' style='height:57%'></div><div class='m'>Apr<br>pos 8.8</div></div><div class='bar'><div class='v'>158</div><div class='col' style='height:49%'></div><div class='m'>May<br>pos 9.9</div></div><div class='bar'><div class='v'>142</div><div class='col' style='height:44%'></div><div class='m'>Jun<br>pos 10.3</div></div><div class='bar'><div class='v'>137</div><div class='col' style='height:42%'></div><div class='m'>Jul<br>pos 11.0</div></div></div><p class='sub'>Bars = avg organic clicks/day per month.</p><h2>Striking-Distance Keywords — fastest wins (pos 4–15)</h2><div class='note'>Page-1 but not top-3. “Est. missed clicks/mo” = impressions × (18% target CTR − current CTR). Sorted by opportunity.</div><table><tr><th>Keyword</th><th class='num'>Pos</th><th class='num'>Impr</th><th class='num'>Clicks</th><th class='num'>CTR</th><th class='num'>Missed/mo</th></tr><tr><td>wolf gordon</td><td class='num'>6.3</td><td class='num'>2,420</td><td class='num'>2</td><td class='num'>0.1%</td><td class='num opp'>+434</td></tr><tr><td>ralph lauren wallpaper</td><td class='num'>6.0</td><td class='num'>2,290</td><td class='num'>49</td><td class='num'>2.1%</td><td class='num opp'>+363</td></tr><tr><td>koroseal</td><td class='num'>6.3</td><td class='num'>1,897</td><td class='num'>3</td><td class='num'>0.2%</td><td class='num opp'>+338</td></tr><tr><td>versace wallpaper</td><td class='num'>8.0</td><td class='num'>1,913</td><td class='num'>27</td><td class='num'>1.4%</td><td class='num opp'>+317</td></tr><tr><td>lee jofa</td><td class='num'>5.8</td><td class='num'>1,479</td><td class='num'>20</td><td class='num'>1.4%</td><td class='num opp'>+246</td></tr><tr><td>missoni fabric</td><td class='num'>4.6</td><td class='num'>1,255</td><td class='num'>16</td><td class='num'>1.3%</td><td class='num opp'>+210</td></tr><tr><td>osborne and little</td><td class='num'>8.7</td><td class='num'>1,102</td><td class='num'>2</td><td class='num'>0.2%</td><td class='num opp'>+196</td></tr><tr><td>velvet wallpaper</td><td class='num'>7.1</td><td class='num'>1,121</td><td class='num'>22</td><td class='num'>2.0%</td><td class='num opp'>+180</td></tr><tr><td>wolf gordon wallcovering</td><td class='num'>6.4</td><td class='num'>912</td><td class='num'>8</td><td class='num'>0.9%</td><td class='num opp'>+156</td></tr><tr><td>zuber wallpaper</td><td class='num'>9.9</td><td class='num'>789</td><td class='num'>6</td><td class='num'>0.8%</td><td class='num opp'>+136</td></tr><tr><td>maya romanoff wallpaper</td><td class='num'>10.4</td><td class='num'>759</td><td class='num'>2</td><td class='num'>0.3%</td><td class='num opp'>+135</td></tr><tr><td>ralph lauren fabric</td><td class='num'>11.4</td><td class='num'>786</td><td class='num'>9</td><td class='num'>1.1%</td><td class='num opp'>+132</td></tr><tr><td>zuber</td><td class='num'>8.6</td><td class='num'>683</td><td class='num'>1</td><td class='num'>0.1%</td><td class='num opp'>+122</td></tr><tr><td>innovations wallcovering</td><td class='num'>6.3</td><td class='num'>622</td><td class='num'>2</td><td class='num'>0.3%</td><td class='num opp'>+110</td></tr><tr><td>kneedler fauchere</td><td class='num'>4.9</td><td class='num'>616</td><td class='num'>4</td><td class='num'>0.6%</td><td class='num opp'>+107</td></tr><tr><td>cork wallpaper</td><td class='num'>9.6</td><td class='num'>621</td><td class='num'>7</td><td class='num'>1.1%</td><td class='num opp'>+105</td></tr><tr><td>koroseal wallcovering</td><td class='num'>6.8</td><td class='num'>602</td><td class='num'>3</td><td class='num'>0.5%</td><td class='num opp'>+105</td></tr><tr><td>maya romanoff</td><td class='num'>8.4</td><td class='num'>561</td><td class='num'>2</td><td class='num'>0.4%</td><td class='num opp'>+99</td></tr><tr><td>gracie wallpaper</td><td class='num'>8.1</td><td class='num'>536</td><td class='num'>2</td><td class='num'>0.4%</td><td class='num opp'>+94</td></tr><tr><td>ralph lauren fabrics</td><td class='num'>7.5</td><td class='num'>521</td><td class='num'>5</td><td class='num'>1.0%</td><td class='num opp'>+89</td></tr><tr><td>alligator wallpaper</td><td class='num'>5.9</td><td class='num'>500</td><td class='num'>5</td><td class='num'>1.0%</td><td class='num opp'>+85</td></tr><tr><td>edelman leather</td><td class='num'>5.6</td><td class='num'>533</td><td class='num'>12</td><td class='num'>2.3%</td><td class='num opp'>+84</td></tr><tr><td>lee jofa wallpaper</td><td class='num'>5.7</td><td class='num'>538</td><td class='num'>16</td><td class='num'>3.0%</td><td class='num opp'>+81</td></tr><tr><td>crocodile wallpaper</td><td class='num'>9.5</td><td class='num'>435</td><td class='num'>3</td><td class='num'>0.7%</td><td class='num opp'>+75</td></tr><tr><td>flocked wallpaper</td><td class='num'>9.7</td><td class='num'>418</td><td class='num'>1</td><td class='num'>0.2%</td><td class='num opp'>+74</td></tr><tr><td>equestrian wallpaper</td><td class='num'>4.9</td><td class='num'>424</td><td class='num'>11</td><td class='num'>2.6%</td><td class='num opp'>+65</td></tr><tr><td>osborne & little</td><td class='num'>14.0</td><td class='num'>360</td><td class='num'>1</td><td class='num'>0.3%</td><td class='num opp'>+64</td></tr><tr><td>phillip jeffries wallpaper</td><td class='num'>11.3</td><td class='num'>302</td><td class='num'>3</td><td class='num'>1.0%</td><td class='num opp'>+51</td></tr><tr><td>"salt wallcovering"</td><td class='num'>5.2</td><td class='num'>283</td><td class='num'>0</td><td class='num'>0.0%</td><td class='num opp'>+51</td></tr><tr><td>missoni wallpaper</td><td class='num'>12.5</td><td class='num'>288</td><td class='num'>3</td><td class='num'>1.0%</td><td class='num opp'>+49</td></tr><tr><td>football fabric</td><td class='num'>5.0</td><td class='num'>266</td><td class='num'>1</td><td class='num'>0.4%</td><td class='num opp'>+47</td></tr><tr><td>roberto cavalli wallpaper</td><td class='num'>4.8</td><td class='num'>333</td><td class='num'>14</td><td class='num'>4.2%</td><td class='num opp'>+46</td></tr><tr><td>leejofa</td><td class='num'>5.5</td><td class='num'>245</td><td class='num'>1</td><td class='num'>0.4%</td><td class='num opp'>+43</td></tr><tr><td>basketball fabric</td><td class='num'>5.2</td><td class='num'>239</td><td class='num'>1</td><td class='num'>0.4%</td><td class='num opp'>+42</td></tr><tr><td>seabrook wallpaper</td><td class='num'>8.8</td><td class='num'>237</td><td class='num'>3</td><td class='num'>1.3%</td><td class='num opp'>+40</td></tr><tr><td>innovations wallpaper</td><td class='num'>6.0</td><td class='num'>234</td><td class='num'>3</td><td class='num'>1.3%</td><td class='num opp'>+39</td></tr><tr><td>stark wallpaper</td><td class='num'>5.2</td><td class='num'>255</td><td class='num'>8</td><td class='num'>3.1%</td><td class='num opp'>+38</td></tr><tr><td>candice olson wallpaper</td><td class='num'>8.5</td><td class='num'>228</td><td class='num'>3</td><td class='num'>1.3%</td><td class='num opp'>+38</td></tr><tr><td>ralph lauren fabric by the yard</td><td class='num'>10.5</td><td class='num'>215</td><td class='num'>4</td><td class='num'>1.9%</td><td class='num opp'>+35</td></tr><tr><td>1950s wallpaper</td><td class='num'>11.1</td><td class='num'>205</td><td class='num'>4</td><td class='num'>2.0%</td><td class='num opp'>+33</td></tr></table><h2>Cannibalization — queries split across pages</h2><div class='note'>2+ of your pages competing for the same term. Consolidate/internal-link to one canonical page each.</div><div class='cann'><h3>versace wallpaper <span class='tag'>2,556 impr · 27 clicks · 2 pages</span></h3><div class='pg'><span>/collections/versace-wallpaper</span><span>pos 9.6 · 1,738 impr · 22 clk</span></div><div class='pg'><span>/products/versace-wallpaper-at-designer-wallcoverings-versace-wallpaper</span><span>pos 3.3 · 817 impr · 4 clk</span></div></div><div class='cann'><h3>wolf gordon <span class='tag'>2,414 impr · 2 clicks · 2 pages</span></h3><div class='pg'><span>/collections/wolf-gordon-wallcoverings</span><span>pos 6.0 · 1,222 impr · 1 clk</span></div><div class='pg'><span>/collections/wolf-gordon</span><span>pos 6.3 · 1,192 impr · 1 clk</span></div></div><div class='cann'><h3>ralph lauren wallpaper <span class='tag'>2,213 impr · 49 clicks · 2 pages</span></h3><div class='pg'><span>/collections/ralph-lauren-home</span><span>pos 6.8 · 2,055 impr · 48 clk</span></div><div class='pg'><span>/en-gb/collections/ralph-lauren-home</span><span>pos 8.7 · 158 impr · 1 clk</span></div></div><div class='cann'><h3>missoni fabric <span class='tag'>2,189 impr · 16 clicks · 2 pages</span></h3><div class='pg'><span>/products/missoni-fabrics-miss-13507</span><span>pos 7.4 · 1,100 impr · 1 clk</span></div><div class='pg'><span>/collections/missoni-home</span><span>pos 4.8 · 1,089 impr · 15 clk</span></div></div><div class='cann'><h3>wolf gordon wallcovering <span class='tag'>922 impr · 8 clicks · 2 pages</span></h3><div class='pg'><span>/collections/wolf-gordon-wallcoverings</span><span>pos 6.1 · 867 impr · 7 clk</span></div><div class='pg'><span>/collections/wolf-gordon</span><span>pos 20.6 · 55 impr · 1 clk</span></div></div><div class='cann'><h3>designer wallcoverings <span class='tag'>515 impr · 61 clicks · 4 pages</span></h3><div class='pg'><span>/</span><span>pos 4.9 · 207 impr · 53 clk</span></div><div class='pg'><span>/pages/contact-us-2</span><span>pos 1.0 · 173 impr · 1 clk</span></div><div class='pg'><span>http://designerwallcoverings.com/</span><span>pos 6.7 · 100 impr · 3 clk</span></div><div class='pg'><span>/en-gb</span><span>pos 1.0 · 30 impr · 2 clk</span></div></div><div class='cann'><h3>equestrian wallpaper <span class='tag'>424 impr · 11 clicks · 2 pages</span></h3><div class='pg'><span>/collections/equestrian-collection</span><span>pos 5.1 · 351 impr · 8 clk</span></div><div class='pg'><span>/en-gb/collections/equestrian-collection</span><span>pos 3.9 · 73 impr · 3 clk</span></div></div><div class='cann'><h3>"salt wallcovering" <span class='tag'>283 impr · 0 clicks · 2 pages</span></h3><div class='pg'><span>/products/ravelle-sea-salt-wallcovering-versa-designed-surfaces</span><span>pos 5.2 · 186 impr · 0 clk</span></div><div class='pg'><span>/products/natural-wood-sea-salt-artmura</span><span>pos 5.2 · 89 impr · 0 clk</span></div></div><div class='cann'><h3>dw wallpaper <span class='tag'>217 impr · 2 clicks · 2 pages</span></h3><div class='pg'><span>/pages/dw-exclusive</span><span>pos 6.5 · 136 impr · 1 clk</span></div><div class='pg'><span>/</span><span>pos 2.5 · 81 impr · 1 clk</span></div></div><div class='cann'><h3>glass bead wallpaper <span class='tag'>146 impr · 4 clicks · 2 pages</span></h3><div class='pg'><span>/products/gleaming-glambeads-cool-black-glass-bead-wallpaper</span><span>pos 3.1 · 78 impr · 2 clk</span></div><div class='pg'><span>/collections/glass-bead</span><span>pos 7.1 · 68 impr · 2 clk</span></div></div><div class='cann'><h3>50s wallpaper <span class='tag'>144 impr · 1 clicks · 2 pages</span></h3><div class='pg'><span>/collections/authentic-1950s-reproduction-vintage-wallcoverings</span><span>pos 11.7 · 104 impr · 1 clk</span></div><div class='pg'><span>/en-gb/collections/authentic-1950s-reproduction-vintage-wallcoverings</span><span>pos 20.5 · 40 impr · 0 clk</span></div></div><h2>Top Queries by Clicks (28d)</h2><table><tr><th>Query</th><th class='num'>Clicks</th><th class='num'>Impr</th><th class='num'>CTR</th><th class='num'>Pos</th></tr><tr><td>designer wallcoverings</td><td class='num'>60</td><td class='num'>227</td><td class='num'>26.4%</td><td class='num'>4.2</td></tr><tr><td>ralph lauren wallpaper</td><td class='num'>49</td><td class='num'>2,290</td><td class='num'>2.1%</td><td class='num'>6.0</td></tr><tr><td>versace wallpaper</td><td class='num'>27</td><td class='num'>1,913</td><td class='num'>1.4%</td><td class='num'>8.0</td></tr><tr><td>velvet wallpaper</td><td class='num'>22</td><td class='num'>1,121</td><td class='num'>2.0%</td><td class='num'>7.1</td></tr><tr><td>lee jofa</td><td class='num'>20</td><td class='num'>1,479</td><td class='num'>1.4%</td><td class='num'>5.8</td></tr><tr><td>lee jofa wallpaper</td><td class='num'>16</td><td class='num'>538</td><td class='num'>3.0%</td><td class='num'>5.7</td></tr><tr><td>missoni fabric</td><td class='num'>16</td><td class='num'>1,255</td><td class='num'>1.3%</td><td class='num'>4.6</td></tr><tr><td>american silk mills</td><td class='num'>14</td><td class='num'>55</td><td class='num'>25.5%</td><td class='num'>2.2</td></tr><tr><td>roberto cavalli wallpaper</td><td class='num'>14</td><td class='num'>333</td><td class='num'>4.2%</td><td class='num'>4.8</td></tr><tr><td>edelman leather</td><td class='num'>12</td><td class='num'>533</td><td class='num'>2.3%</td><td class='num'>5.6</td></tr><tr><td>equestrian wallpaper</td><td class='num'>11</td><td class='num'>424</td><td class='num'>2.6%</td><td class='num'>4.9</td></tr><tr><td>ralph lauren fabric</td><td class='num'>9</td><td class='num'>786</td><td class='num'>1.1%</td><td class='num'>11.4</td></tr><tr><td>designer wall coverings</td><td class='num'>8</td><td class='num'>59</td><td class='num'>13.6%</td><td class='num'>1.1</td></tr><tr><td>designer wallcoverings and fabrics</td><td class='num'>8</td><td class='num'>23</td><td class='num'>34.8%</td><td class='num'>1.7</td></tr><tr><td>stark wallpaper</td><td class='num'>8</td><td class='num'>255</td><td class='num'>3.1%</td><td class='num'>5.2</td></tr></table><h2>Drafted Title / Meta Rewrites</h2><div class='note'>Keyword-front-loaded, benefit-led SEO fields to lift CTR on low-CTR page-1 pages. Paste into each page’s SEO fields (or apply via Shopify — gated).</div><div class='rw'><span class='pth'>Homepage /</span> · <span class='tag'>designer wallpaper / wall coverings</span><div class='meta'>weak head-term CTR at page-2 positions</div><div class='lbl'>Title tag</div><div class='val'>Designer Wallcoverings & Luxury Wallpaper | Ralph Lauren, Versace, Lee Jofa</div><div class='lbl'>Meta description</div><div class='val'>Shop 40+ luxury wallcovering houses — Ralph Lauren, Versace, Lee Jofa, Missoni & more. Designer wallpaper, grasscloth, velvet & custom murals. Trade pricing & samples.</div></div><div class='rw'><span class='pth'>/collections/ralph-lauren-home</span> · <span class='tag'>ralph lauren wallpaper</span><div class='meta'>page-1, sub-2.5% CTR</div><div class='lbl'>Title tag</div><div class='val'>Ralph Lauren Wallpaper & Wallcoverings — Authorized Dealer</div><div class='lbl'>Meta description</div><div class='val'>Explore the full Ralph Lauren Home wallpaper collection — signature plaids, florals & heritage patterns. Trade pricing, order samples online.</div></div><div class='rw'><span class='pth'>/collections/versace-wallpaper</span> · <span class='tag'>versace wallpaper</span><div class='meta'>page-1, ~1.4% CTR</div><div class='lbl'>Title tag</div><div class='val'>Versace Wallpaper — Official Home Collection</div><div class='lbl'>Meta description</div><div class='val'>Authentic Versace Home wallpaper — Baroque, Medusa & Greek-key designs. Luxury Italian wallcoverings with trade pricing & fast samples.</div></div><div class='rw'><span class='pth'>/collections/lee-jofa</span> · <span class='tag'>lee jofa</span><div class='meta'>page-1, ~1.4% CTR</div><div class='lbl'>Title tag</div><div class='val'>Lee Jofa Wallpaper & Fabric | Authorized Dealer</div><div class='lbl'>Meta description</div><div class='val'>Browse Lee Jofa wallcoverings & fabrics — heritage prints, damasks & wovens. Trade discounts and quick samples.</div></div><div class='rw'><span class='pth'>/collections/flocked-velvet-wallpaper</span> · <span class='tag'>velvet wallpaper</span><div class='meta'>~0.8% CTR, 5.8k impr</div><div class='lbl'>Title tag</div><div class='val'>Flocked Velvet Wallpaper | Luxury Textured Wallcoverings</div><div class='lbl'>Meta description</div><div class='val'>Rich flocked velvet wallpaper in dozens of colorways — damask, floral & geometric. Add depth & texture. Trade pricing, samples ship fast.</div></div><div class='rw'><span class='pth'>Wolf-Gordon pages</span> · <span class='tag'>wolf gordon wallcovering</span><div class='meta'>~0.9% CTR at pos 6</div><div class='lbl'>Title tag</div><div class='val'>Wolf-Gordon Wallcoverings — Contract & Commercial</div><div class='lbl'>Meta description</div><div class='val'>Wolf-Gordon commercial wallcoverings & textiles — durable Type II vinyl for contract interiors. Request pricing & samples.</div></div><div class='rw'><span class='pth'>Zuber pages</span> · <span class='tag'>zuber wallpaper</span><div class='meta'>~0.8% CTR at pos 10</div><div class='lbl'>Title tag</div><div class='val'>Zuber Wallpaper — Hand-Blocked Scenic Panoramics</div><div class='lbl'>Meta description</div><div class='val'>Zuber et Cie hand-block-printed scenic wallpaper & panoramics from original woodblocks. Heritage French wallcoverings, made to order.</div></div><footer>OpenSEO self-hosted + Google Search Console · read-only, $0 · auto-refreshed weekly · Jul 20, 2026, 01:31 PM</footer></div></body></html>
\ No newline at end of file
+<!doctype html><html><head><meta charset='utf-8'><meta name='viewport' content='width=device-width,initial-scale=1'><title>DW Search Console Report</title><style>:root{--bg:#f6f3ee;--ink:#1c1a17;--muted:#6b6459;--line:#e0d9cd;--card:#fffdf9;--accent:#8a6d3b;--good:#2e7d5b;--bad:#b4472e}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}.wrap{max-width:1120px;margin:0 auto;padding:32px 22px 80px}h1{font-family:Georgia,serif;font-weight:600;font-size:30px;margin:0 0 4px}h2{font-family:Georgia,serif;font-weight:600;font-size:20px;margin:40px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}.sub{color:var(--muted);font-size:13px;margin:0 0 24px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.kpi{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.kpi .n{font-size:26px;font-weight:700;font-family:Georgia,serif}.kpi .l{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-top:2px}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:13px}th,td{padding:8px 11px;text-align:left;border-bottom:1px solid var(--line)}th{background:#efe9df;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:none}.tag{display:inline-block;font-size:11px;padding:1px 7px;border-radius:20px;background:#efe9df;color:var(--accent)}.opp{color:var(--good);font-weight:600}.warn{color:var(--bad);font-weight:600}.note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:12px 16px;font-size:13px;margin:12px 0}.bars{display:flex;align-items:flex-end;gap:14px;height:150px;padding:16px 8px 0;background:var(--card);border:1px solid var(--line);border-radius:10px}.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.bar .col{width:70%;background:linear-gradient(#b89968,#8a6d3b);border-radius:4px 4px 0 0}.bar .v{font-size:11px;font-weight:600;margin-bottom:3px}.bar .m{font-size:11px;color:var(--muted);margin-top:5px}.cann{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:4px 0;margin-bottom:14px}.cann h3{font-size:14px;margin:12px 16px 2px}.cann .pg{font-size:12px;color:var(--muted);padding:3px 16px;display:flex;justify-content:space-between}.rw{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:12px}.rw .pth{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--accent)}.rw .meta{font-size:12px;color:var(--muted);margin:2px 0 8px}.rw .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-top:6px}.rw .val{font-size:13px;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 9px;margin-top:2px}footer{margin-top:50px;color:var(--muted);font-size:12px;text-align:center}</style></head><body><div class='wrap'><h1>Designer Wallcoverings — Search Console Intelligence</h1><p class='sub'>Live Google Search Console · <b>sc-domain:designerwallcoverings.com</b> · 28-day window + 6-month trend · auto-refreshed weekly · generated Jul 20, 2026, 01:49 PM · source: GSC (free, $0)</p><div class='kpis'><div class='kpi'><div class='n'>957</div><div class='l'>Clicks (28d, queries)</div></div><div class='kpi'><div class='n'>49,214</div><div class='l'>Impressions (28d)</div></div><div class='kpi'><div class='n'>1.9%</div><div class='l'>Avg CTR</div></div><div class='kpi'><div class='n'>14.9</div><div class='l'>Avg position</div></div></div><h2>6-Month Trend</h2><div class='note'>Avg organic clicks/day <b class='warn'>down 57%</b> from Jan to Jul (10.4→11.0 avg position). Watch this reverse as the fixes land.</div><div class='bars'><div class='bar'><div class='v'>319</div><div class='col' style='height:100%'></div><div class='m'>Jan<br>pos 10.4</div></div><div class='bar'><div class='v'>318</div><div class='col' style='height:99%'></div><div class='m'>Feb<br>pos 9.7</div></div><div class='bar'><div class='v'>236</div><div class='col' style='height:73%'></div><div class='m'>Mar<br>pos 8.8</div></div><div class='bar'><div class='v'>183</div><div class='col' style='height:57%'></div><div class='m'>Apr<br>pos 8.8</div></div><div class='bar'><div class='v'>158</div><div class='col' style='height:49%'></div><div class='m'>May<br>pos 9.9</div></div><div class='bar'><div class='v'>142</div><div class='col' style='height:44%'></div><div class='m'>Jun<br>pos 10.3</div></div><div class='bar'><div class='v'>137</div><div class='col' style='height:42%'></div><div class='m'>Jul<br>pos 11.0</div></div></div><p class='sub'>Bars = avg organic clicks/day per month.</p><h2>Striking-Distance Keywords — fastest wins (pos 4–15)</h2><div class='note'>Page-1 but not top-3. “Est. missed clicks/mo” = impressions × (18% target CTR − current CTR). Sorted by opportunity.</div><table><tr><th>Keyword</th><th class='num'>Pos</th><th class='num'>Impr</th><th class='num'>Clicks</th><th class='num'>CTR</th><th class='num'>Missed/mo</th></tr><tr><td>wolf gordon</td><td class='num'>6.3</td><td class='num'>2,420</td><td class='num'>2</td><td class='num'>0.1%</td><td class='num opp'>+434</td></tr><tr><td>ralph lauren wallpaper</td><td class='num'>6.0</td><td class='num'>2,290</td><td class='num'>49</td><td class='num'>2.1%</td><td class='num opp'>+363</td></tr><tr><td>koroseal</td><td class='num'>6.3</td><td class='num'>1,897</td><td class='num'>3</td><td class='num'>0.2%</td><td class='num opp'>+338</td></tr><tr><td>versace wallpaper</td><td class='num'>8.0</td><td class='num'>1,913</td><td class='num'>27</td><td class='num'>1.4%</td><td class='num opp'>+317</td></tr><tr><td>lee jofa</td><td class='num'>5.8</td><td class='num'>1,479</td><td class='num'>20</td><td class='num'>1.4%</td><td class='num opp'>+246</td></tr><tr><td>missoni fabric</td><td class='num'>4.6</td><td class='num'>1,255</td><td class='num'>16</td><td class='num'>1.3%</td><td class='num opp'>+210</td></tr><tr><td>osborne and little</td><td class='num'>8.7</td><td class='num'>1,102</td><td class='num'>2</td><td class='num'>0.2%</td><td class='num opp'>+196</td></tr><tr><td>velvet wallpaper</td><td class='num'>7.1</td><td class='num'>1,121</td><td class='num'>22</td><td class='num'>2.0%</td><td class='num opp'>+180</td></tr><tr><td>wolf gordon wallcovering</td><td class='num'>6.4</td><td class='num'>912</td><td class='num'>8</td><td class='num'>0.9%</td><td class='num opp'>+156</td></tr><tr><td>zuber wallpaper</td><td class='num'>9.9</td><td class='num'>789</td><td class='num'>6</td><td class='num'>0.8%</td><td class='num opp'>+136</td></tr><tr><td>maya romanoff wallpaper</td><td class='num'>10.4</td><td class='num'>759</td><td class='num'>2</td><td class='num'>0.3%</td><td class='num opp'>+135</td></tr><tr><td>ralph lauren fabric</td><td class='num'>11.4</td><td class='num'>786</td><td class='num'>9</td><td class='num'>1.1%</td><td class='num opp'>+132</td></tr><tr><td>zuber</td><td class='num'>8.6</td><td class='num'>683</td><td class='num'>1</td><td class='num'>0.1%</td><td class='num opp'>+122</td></tr><tr><td>innovations wallcovering</td><td class='num'>6.3</td><td class='num'>622</td><td class='num'>2</td><td class='num'>0.3%</td><td class='num opp'>+110</td></tr><tr><td>kneedler fauchere</td><td class='num'>4.9</td><td class='num'>616</td><td class='num'>4</td><td class='num'>0.6%</td><td class='num opp'>+107</td></tr><tr><td>cork wallpaper</td><td class='num'>9.6</td><td class='num'>621</td><td class='num'>7</td><td class='num'>1.1%</td><td class='num opp'>+105</td></tr><tr><td>koroseal wallcovering</td><td class='num'>6.8</td><td class='num'>602</td><td class='num'>3</td><td class='num'>0.5%</td><td class='num opp'>+105</td></tr><tr><td>maya romanoff</td><td class='num'>8.4</td><td class='num'>561</td><td class='num'>2</td><td class='num'>0.4%</td><td class='num opp'>+99</td></tr><tr><td>gracie wallpaper</td><td class='num'>8.1</td><td class='num'>536</td><td class='num'>2</td><td class='num'>0.4%</td><td class='num opp'>+94</td></tr><tr><td>ralph lauren fabrics</td><td class='num'>7.5</td><td class='num'>521</td><td class='num'>5</td><td class='num'>1.0%</td><td class='num opp'>+89</td></tr><tr><td>alligator wallpaper</td><td class='num'>5.9</td><td class='num'>500</td><td class='num'>5</td><td class='num'>1.0%</td><td class='num opp'>+85</td></tr><tr><td>edelman leather</td><td class='num'>5.6</td><td class='num'>533</td><td class='num'>12</td><td class='num'>2.3%</td><td class='num opp'>+84</td></tr><tr><td>lee jofa wallpaper</td><td class='num'>5.7</td><td class='num'>538</td><td class='num'>16</td><td class='num'>3.0%</td><td class='num opp'>+81</td></tr><tr><td>crocodile wallpaper</td><td class='num'>9.5</td><td class='num'>435</td><td class='num'>3</td><td class='num'>0.7%</td><td class='num opp'>+75</td></tr><tr><td>flocked wallpaper</td><td class='num'>9.7</td><td class='num'>418</td><td class='num'>1</td><td class='num'>0.2%</td><td class='num opp'>+74</td></tr><tr><td>equestrian wallpaper</td><td class='num'>4.9</td><td class='num'>424</td><td class='num'>11</td><td class='num'>2.6%</td><td class='num opp'>+65</td></tr><tr><td>osborne & little</td><td class='num'>14.0</td><td class='num'>360</td><td class='num'>1</td><td class='num'>0.3%</td><td class='num opp'>+64</td></tr><tr><td>phillip jeffries wallpaper</td><td class='num'>11.3</td><td class='num'>302</td><td class='num'>3</td><td class='num'>1.0%</td><td class='num opp'>+51</td></tr><tr><td>"salt wallcovering"</td><td class='num'>5.2</td><td class='num'>283</td><td class='num'>0</td><td class='num'>0.0%</td><td class='num opp'>+51</td></tr><tr><td>missoni wallpaper</td><td class='num'>12.5</td><td class='num'>288</td><td class='num'>3</td><td class='num'>1.0%</td><td class='num opp'>+49</td></tr><tr><td>football fabric</td><td class='num'>5.0</td><td class='num'>266</td><td class='num'>1</td><td class='num'>0.4%</td><td class='num opp'>+47</td></tr><tr><td>roberto cavalli wallpaper</td><td class='num'>4.8</td><td class='num'>333</td><td class='num'>14</td><td class='num'>4.2%</td><td class='num opp'>+46</td></tr><tr><td>leejofa</td><td class='num'>5.5</td><td class='num'>245</td><td class='num'>1</td><td class='num'>0.4%</td><td class='num opp'>+43</td></tr><tr><td>basketball fabric</td><td class='num'>5.2</td><td class='num'>239</td><td class='num'>1</td><td class='num'>0.4%</td><td class='num opp'>+42</td></tr><tr><td>seabrook wallpaper</td><td class='num'>8.8</td><td class='num'>237</td><td class='num'>3</td><td class='num'>1.3%</td><td class='num opp'>+40</td></tr><tr><td>innovations wallpaper</td><td class='num'>6.0</td><td class='num'>234</td><td class='num'>3</td><td class='num'>1.3%</td><td class='num opp'>+39</td></tr><tr><td>stark wallpaper</td><td class='num'>5.2</td><td class='num'>255</td><td class='num'>8</td><td class='num'>3.1%</td><td class='num opp'>+38</td></tr><tr><td>candice olson wallpaper</td><td class='num'>8.5</td><td class='num'>228</td><td class='num'>3</td><td class='num'>1.3%</td><td class='num opp'>+38</td></tr><tr><td>ralph lauren fabric by the yard</td><td class='num'>10.5</td><td class='num'>215</td><td class='num'>4</td><td class='num'>1.9%</td><td class='num opp'>+35</td></tr><tr><td>1950s wallpaper</td><td class='num'>11.1</td><td class='num'>205</td><td class='num'>4</td><td class='num'>2.0%</td><td class='num opp'>+33</td></tr></table><h2>Cannibalization — queries split across pages</h2><div class='note'>2+ of your pages competing for the same term. Consolidate/internal-link to one canonical page each.</div><div class='cann'><h3>versace wallpaper <span class='tag'>2,556 impr · 27 clicks · 2 pages</span></h3><div class='pg'><span>/collections/versace-wallpaper</span><span>pos 9.6 · 1,738 impr · 22 clk</span></div><div class='pg'><span>/products/versace-wallpaper-at-designer-wallcoverings-versace-wallpaper</span><span>pos 3.3 · 817 impr · 4 clk</span></div></div><div class='cann'><h3>wolf gordon <span class='tag'>2,414 impr · 2 clicks · 2 pages</span></h3><div class='pg'><span>/collections/wolf-gordon-wallcoverings</span><span>pos 6.0 · 1,222 impr · 1 clk</span></div><div class='pg'><span>/collections/wolf-gordon</span><span>pos 6.3 · 1,192 impr · 1 clk</span></div></div><div class='cann'><h3>ralph lauren wallpaper <span class='tag'>2,213 impr · 49 clicks · 2 pages</span></h3><div class='pg'><span>/collections/ralph-lauren-home</span><span>pos 6.8 · 2,055 impr · 48 clk</span></div><div class='pg'><span>/en-gb/collections/ralph-lauren-home</span><span>pos 8.7 · 158 impr · 1 clk</span></div></div><div class='cann'><h3>missoni fabric <span class='tag'>2,189 impr · 16 clicks · 2 pages</span></h3><div class='pg'><span>/products/missoni-fabrics-miss-13507</span><span>pos 7.4 · 1,100 impr · 1 clk</span></div><div class='pg'><span>/collections/missoni-home</span><span>pos 4.8 · 1,089 impr · 15 clk</span></div></div><div class='cann'><h3>wolf gordon wallcovering <span class='tag'>922 impr · 8 clicks · 2 pages</span></h3><div class='pg'><span>/collections/wolf-gordon-wallcoverings</span><span>pos 6.1 · 867 impr · 7 clk</span></div><div class='pg'><span>/collections/wolf-gordon</span><span>pos 20.6 · 55 impr · 1 clk</span></div></div><div class='cann'><h3>designer wallcoverings <span class='tag'>515 impr · 61 clicks · 4 pages</span></h3><div class='pg'><span>/</span><span>pos 4.9 · 207 impr · 53 clk</span></div><div class='pg'><span>/pages/contact-us-2</span><span>pos 1.0 · 173 impr · 1 clk</span></div><div class='pg'><span>http://designerwallcoverings.com/</span><span>pos 6.7 · 100 impr · 3 clk</span></div><div class='pg'><span>/en-gb</span><span>pos 1.0 · 30 impr · 2 clk</span></div></div><div class='cann'><h3>equestrian wallpaper <span class='tag'>424 impr · 11 clicks · 2 pages</span></h3><div class='pg'><span>/collections/equestrian-collection</span><span>pos 5.1 · 351 impr · 8 clk</span></div><div class='pg'><span>/en-gb/collections/equestrian-collection</span><span>pos 3.9 · 73 impr · 3 clk</span></div></div><div class='cann'><h3>"salt wallcovering" <span class='tag'>283 impr · 0 clicks · 2 pages</span></h3><div class='pg'><span>/products/ravelle-sea-salt-wallcovering-versa-designed-surfaces</span><span>pos 5.2 · 186 impr · 0 clk</span></div><div class='pg'><span>/products/natural-wood-sea-salt-artmura</span><span>pos 5.2 · 89 impr · 0 clk</span></div></div><div class='cann'><h3>dw wallpaper <span class='tag'>217 impr · 2 clicks · 2 pages</span></h3><div class='pg'><span>/pages/dw-exclusive</span><span>pos 6.5 · 136 impr · 1 clk</span></div><div class='pg'><span>/</span><span>pos 2.5 · 81 impr · 1 clk</span></div></div><div class='cann'><h3>glass bead wallpaper <span class='tag'>146 impr · 4 clicks · 2 pages</span></h3><div class='pg'><span>/products/gleaming-glambeads-cool-black-glass-bead-wallpaper</span><span>pos 3.1 · 78 impr · 2 clk</span></div><div class='pg'><span>/collections/glass-bead</span><span>pos 7.1 · 68 impr · 2 clk</span></div></div><div class='cann'><h3>50s wallpaper <span class='tag'>144 impr · 1 clicks · 2 pages</span></h3><div class='pg'><span>/collections/authentic-1950s-reproduction-vintage-wallcoverings</span><span>pos 11.7 · 104 impr · 1 clk</span></div><div class='pg'><span>/en-gb/collections/authentic-1950s-reproduction-vintage-wallcoverings</span><span>pos 20.5 · 40 impr · 0 clk</span></div></div><h2>Top Queries by Clicks (28d)</h2><table><tr><th>Query</th><th class='num'>Clicks</th><th class='num'>Impr</th><th class='num'>CTR</th><th class='num'>Pos</th></tr><tr><td>designer wallcoverings</td><td class='num'>60</td><td class='num'>227</td><td class='num'>26.4%</td><td class='num'>4.2</td></tr><tr><td>ralph lauren wallpaper</td><td class='num'>49</td><td class='num'>2,290</td><td class='num'>2.1%</td><td class='num'>6.0</td></tr><tr><td>versace wallpaper</td><td class='num'>27</td><td class='num'>1,913</td><td class='num'>1.4%</td><td class='num'>8.0</td></tr><tr><td>velvet wallpaper</td><td class='num'>22</td><td class='num'>1,121</td><td class='num'>2.0%</td><td class='num'>7.1</td></tr><tr><td>lee jofa</td><td class='num'>20</td><td class='num'>1,479</td><td class='num'>1.4%</td><td class='num'>5.8</td></tr><tr><td>lee jofa wallpaper</td><td class='num'>16</td><td class='num'>538</td><td class='num'>3.0%</td><td class='num'>5.7</td></tr><tr><td>missoni fabric</td><td class='num'>16</td><td class='num'>1,255</td><td class='num'>1.3%</td><td class='num'>4.6</td></tr><tr><td>american silk mills</td><td class='num'>14</td><td class='num'>55</td><td class='num'>25.5%</td><td class='num'>2.2</td></tr><tr><td>roberto cavalli wallpaper</td><td class='num'>14</td><td class='num'>333</td><td class='num'>4.2%</td><td class='num'>4.8</td></tr><tr><td>edelman leather</td><td class='num'>12</td><td class='num'>533</td><td class='num'>2.3%</td><td class='num'>5.6</td></tr><tr><td>equestrian wallpaper</td><td class='num'>11</td><td class='num'>424</td><td class='num'>2.6%</td><td class='num'>4.9</td></tr><tr><td>ralph lauren fabric</td><td class='num'>9</td><td class='num'>786</td><td class='num'>1.1%</td><td class='num'>11.4</td></tr><tr><td>designer wall coverings</td><td class='num'>8</td><td class='num'>59</td><td class='num'>13.6%</td><td class='num'>1.1</td></tr><tr><td>designer wallcoverings and fabrics</td><td class='num'>8</td><td class='num'>23</td><td class='num'>34.8%</td><td class='num'>1.7</td></tr><tr><td>stark wallpaper</td><td class='num'>8</td><td class='num'>255</td><td class='num'>3.1%</td><td class='num'>5.2</td></tr></table><h2>Drafted Title / Meta Rewrites</h2><div class='note'>Keyword-front-loaded, benefit-led SEO fields to lift CTR on low-CTR page-1 pages. Paste into each page’s SEO fields (or apply via Shopify — gated).</div><div class='rw'><span class='pth'>Homepage /</span> · <span class='tag'>designer wallpaper / wall coverings</span><div class='meta'>weak head-term CTR at page-2 positions</div><div class='lbl'>Title tag</div><div class='val'>Designer Wallcoverings & Luxury Wallpaper | Ralph Lauren, Versace, Lee Jofa</div><div class='lbl'>Meta description</div><div class='val'>Shop 40+ luxury wallcovering houses — Ralph Lauren, Versace, Lee Jofa, Missoni & more. Designer wallpaper, grasscloth, velvet & custom murals. Trade pricing & samples.</div></div><div class='rw'><span class='pth'>/collections/ralph-lauren-home</span> · <span class='tag'>ralph lauren wallpaper</span><div class='meta'>page-1, sub-2.5% CTR</div><div class='lbl'>Title tag</div><div class='val'>Ralph Lauren Wallpaper & Wallcoverings — Authorized Dealer</div><div class='lbl'>Meta description</div><div class='val'>Explore the full Ralph Lauren Home wallpaper collection — signature plaids, florals & heritage patterns. Trade pricing, order samples online.</div></div><div class='rw'><span class='pth'>/collections/versace-wallpaper</span> · <span class='tag'>versace wallpaper</span><div class='meta'>page-1, ~1.4% CTR</div><div class='lbl'>Title tag</div><div class='val'>Versace Wallpaper — Official Home Collection</div><div class='lbl'>Meta description</div><div class='val'>Authentic Versace Home wallpaper — Baroque, Medusa & Greek-key designs. Luxury Italian wallcoverings with trade pricing & fast samples.</div></div><div class='rw'><span class='pth'>/collections/lee-jofa</span> · <span class='tag'>lee jofa</span><div class='meta'>page-1, ~1.4% CTR</div><div class='lbl'>Title tag</div><div class='val'>Lee Jofa Wallpaper & Fabric | Authorized Dealer</div><div class='lbl'>Meta description</div><div class='val'>Browse Lee Jofa wallcoverings & fabrics — heritage prints, damasks & wovens. Trade discounts and quick samples.</div></div><div class='rw'><span class='pth'>/collections/flocked-velvet-wallpaper</span> · <span class='tag'>velvet wallpaper</span><div class='meta'>~0.8% CTR, 5.8k impr</div><div class='lbl'>Title tag</div><div class='val'>Flocked Velvet Wallpaper | Luxury Textured Wallcoverings</div><div class='lbl'>Meta description</div><div class='val'>Rich flocked velvet wallpaper in dozens of colorways — damask, floral & geometric. Add depth & texture. Trade pricing, samples ship fast.</div></div><div class='rw'><span class='pth'>Wolf-Gordon pages</span> · <span class='tag'>wolf gordon wallcovering</span><div class='meta'>~0.9% CTR at pos 6</div><div class='lbl'>Title tag</div><div class='val'>Wolf-Gordon Wallcoverings — Contract & Commercial</div><div class='lbl'>Meta description</div><div class='val'>Wolf-Gordon commercial wallcoverings & textiles — durable Type II vinyl for contract interiors. Request pricing & samples.</div></div><div class='rw'><span class='pth'>Zuber pages</span> · <span class='tag'>zuber wallpaper</span><div class='meta'>~0.8% CTR at pos 10</div><div class='lbl'>Title tag</div><div class='val'>Zuber Wallpaper — Hand-Blocked Scenic Panoramics</div><div class='lbl'>Meta description</div><div class='val'>Zuber et Cie hand-block-printed scenic wallpaper & panoramics from original woodblocks. Heritage French wallcoverings, made to order.</div></div><footer>OpenSEO self-hosted + Google Search Console · read-only, $0 · auto-refreshed weekly · Jul 20, 2026, 01:49 PM</footer></div></body></html>
\ No newline at end of file
diff --git a/refresh.sh b/refresh.sh
index da2114b..fd00511 100755
--- a/refresh.sh
+++ b/refresh.sh
@@ -30,3 +30,12 @@ done
python3 "$DIR/build.py" >> "$LOG" 2>&1
echo "[$(ts)] refresh done" >> "$LOG"
+
+# Email the report via George only when asked (weekly launchd passes --email; manual runs don't).
+if [ "$1" = "--email" ]; then
+ if python3 "$DIR/send_report.py" >> "$LOG" 2>&1; then
+ echo "[$(ts)] emailed report to steve@dw via George" >> "$LOG"
+ else
+ echo "[$(ts)] EMAIL FAILED (George down?) — report still rebuilt" >> "$LOG"
+ fi
+fi
diff --git a/send_report.py b/send_report.py
new file mode 100644
index 0000000..5cedfb0
--- /dev/null
+++ b/send_report.py
@@ -0,0 +1,51 @@
+#!/usr/bin/env python3
+"""Email the built report to steve@dw via George's local HTTP agent.
+Reads George URL + basic-auth from ~/.claude.json at runtime (no secret in source)."""
+import json, os, base64, urllib.request
+
+HOME = os.path.expanduser("~")
+REPORT = os.path.join(HOME, "Projects/dw-seo-report/index.html")
+
+def find_george_env(o):
+ if isinstance(o, dict):
+ g = o.get("george")
+ if isinstance(g, dict) and isinstance(g.get("env"), dict) and g["env"].get("GEORGE_URL"):
+ return g["env"]
+ for v in o.values():
+ r = find_george_env(v)
+ if r: return r
+ elif isinstance(o, list):
+ for v in o:
+ r = find_george_env(v)
+ if r: return r
+ return None
+
+cfg = json.load(open(os.path.join(HOME, ".claude.json")))
+env = find_george_env(cfg)
+assert env, "george MCP env not found in ~/.claude.json"
+URL = env["GEORGE_URL"].rstrip("/")
+AUTH = env["GEORGE_BASIC_AUTH"]
+
+html = open(REPORT, encoding="utf-8").read()
+b64 = base64.b64encode(html.encode("utf-8")).decode()
+
+payload = {
+ "to": "steve@designerwallcoverings.com",
+ "account": "steve-office",
+ "subject": "DW Search Console Report — weekly SEO intelligence (designerwallcoverings.com)",
+ "body": ("<div style='font-family:-apple-system,Arial,sans-serif;max-width:640px;color:#1c1a17'>"
+ "<h2 style='font-family:Georgia,serif'>DW Search Console — weekly report</h2>"
+ "<p style='color:#6b6459'>Fresh Google Search Console pull for <b>designerwallcoverings.com</b>. "
+ "Full styled report attached — open <b>dw-seo-report.html</b> in a browser. "
+ "Covers the 6-month click trend, striking-distance keywords, cannibalization, top queries, "
+ "and drafted title/meta rewrites.</p>"
+ "<p style='color:#6b6459;font-size:13px'>Auto-generated from live GSC (free). "
+ "Local interactive viewer: http://127.0.0.1:50136 (admin / DW2024!).</p></div>"),
+ "attachments": [{"filename": "dw-seo-report.html", "content_base64": b64, "mime_type": "text/html"}],
+}
+
+req = urllib.request.Request(URL + "/api/send-with-attachment",
+ data=json.dumps(payload).encode(),
+ headers={"Authorization": "Basic " + AUTH, "Content-Type": "application/json"})
+with urllib.request.urlopen(req, timeout=60) as r:
+ print("george:", r.read().decode()[:300])
← 917b718 Self-contained weekly GSC refresh pipeline (MCP fetch + rebu
·
back to Dw Seo Report
·
(newest)