首页 / Skills / 品牌与营销 / Google SEO 审计
品牌与营销

Google SEO 审计

AIBarsMITSkill 语言: 英文
协议已核对不含脚本
演示真实运行记录 · claude-sonnet-5-5 · 2026年10月
I run a small online shop at example-bikes.test (fictional). Please audit this product page for Google Search. I can only change the page template and robots.txt. Nothing else was checked: I have no Search Console data and no speed results. Problem: this page is not showing up on Google. URL: https://www.example-bikes.test/products/trail-runner-29?color=red&utm_source=news robots.txt: User-agent: * Disallow: /products/ Disallow: /assets/ Sitemap: https://example-bikes.test/sitemap.xml HTML (head and part of body): <head> <title>Bikes Bikes Bikes | Buy Cheap Bikes Online | Best Bikes | Example Bikes</title> <meta name="robots" content="noindex, follow"> <meta name="description" content=""> <link rel="canonical" href="http://example-bikes.test/products/trail-runner-29"> <script type="application/ld+json">{"@context":"https://schema.org","@type":"Product","name":"Trail Runner 29","aggregateRating":{"@type":"AggregateRating","ratingValue":"4.9","reviewCount":"1280"}}</script> </head> <body> <div id="app"></div> <script src="/assets/app.js"></script> <h2>Trail Runner 29</h2> <img src="/assets/img/IMG_4471.jpg"> <p style="display:none">cheap mountain bike best mountain bike buy mountain bike online</p> <div onclick="location.href='/products/trail-runner-27'">Also see the 27 inch model</div> </body> Note: the page shows no reviews to visitors at all.
Skill: google-seo-audit

SEO audit: Trail Runner 29 product page

1. Scope and what was checked

Checked: the pasted robots.txt, the <head>, and the partial body for https://www.example-bikes.test/products/trail-runner-29?color=red&utm_source=news.

Not checked: the live HTTP status and headers (including X-Robots-Tag), the contents of sitemap.xml, the rendered DOM, Search Console, Core Web Vitals, mobile rendering, and the rest of the site. Because the site type is a shop and the goal is for this product to appear on Google, I judged the page as a transactional product page. The target country and language weren't given.

2. Summary

  • Three separate things block or undermine indexing: Disallow: /products/ in robots.txt, noindex in the meta tag, and a canonical that points to a different host and scheme.
  • Even with those fixed, the visible content is thin and depends on JavaScript. The body has an empty <div id="app">, a heading and an image, and /assets/app.js is blocked.
  • The Product structured data claims 1,280 reviews rated 4.9, but visitors see no reviews. That breaks Google's guidance that markup must match visible content. Remove it or show the reviews.
  • The title is keyword-stuffed, the meta description is empty, and the page has hidden keyword text. All of these should go.

3. Findings

ID Pri Area Finding and evidence Why it matters Fix Type
F1 P0 robots.txt Disallow: /products/ blocks every product URL, including this one. Google can't crawl the page, so it can't read the content, and the canonical or structured data can't be processed. A blocked URL can still be listed without a snippet if other pages link to it. Remove that line from robots.txt. Google documented
F2 P0 Indexing directive <meta name="robots" content="noindex, follow">. Google drops pages with noindex from results. It can only see this tag once F1 is fixed. Until then the page is both blocked and marked noindex. Remove the tag from the product template, or output index, follow. Check that no template rule or X-Robots-Tag header adds it back (not checked). Google documented
F3 P0 Resources Disallow: /assets/ blocks /assets/app.js and /assets/img/IMG_4471.jpg. Google can't run the script that fills <div id="app">, so it may see an empty page. The image can't be crawled either. Remove the /assets/ line, or allow the JS, CSS and image paths with Allow: rules. Google documented
F4 P1 Canonical href="http://example-bikes.test/products/trail-runner-29" is http, non-www, and has no parameters. The page URL is https and www. The sitemap line uses https://example-bikes.test (non-www). Three host or scheme versions disagree, and the canonical may redirect (not checked). Conflicting signals can lead Google to pick a different canonical. Choose one preferred form, such as https://www.example-bikes.test/.... Generate the canonical in the template as an absolute URL in that form, without ?color= or utm_ parameters. Use the same host in the sitemap line. Redirect the other versions with a single 301 (server config, which you said you can't change, so ask your host). Google documented
F5 P1 Rendering and content <div id="app"></div> plus a script, then only an <h2> and an image. There is no <h1>, price, description, specs, or availability in the HTML. If the content is built client-side, Google depends on rendering. With the script blocked, it sees almost nothing. Thin pages are often crawled but not indexed. Put the product name (<h1>), description, price, availability, and specs in the server-rendered HTML in the template. Use <h1> for the main title and <h2> for sections. Google documented
F6 P1 Structured data Product markup claims aggregateRating 4.9 from 1,280 reviews, but no reviews are visible. The markup also has no offers, image, or description. Google requires markup to match visible content. Ratings that users can't see risk a manual action for misleading markup. The page is also missing the properties that make a product eligible for merchant-style results. Remove aggregateRating now. Add it back only if real, collected reviews are displayed on the page. Add offers (price, currency, availability), image, and description that match the visible page. Validate in the Rich Results Test. Google documented
F7 P1 Hidden text <p style="display:none">cheap mountain bike best mountain bike buy mountain bike online</p>. This is hidden keyword text, which Google's spam policies prohibit. It can lead to a manual action. Delete it. Put useful visible product copy in its place. Google documented
F8 P1 Internal links <div onclick="location.href='/products/trail-runner-27'">. Google follows <a href> links, not JavaScript click handlers. The 27-inch page may not be discovered through this link. Use <a href="/products/trail-runner-27">Trail Runner 27 mountain bike</a>. Also confirm category pages link to this product (not checked). Google documented
F9 P2 Title Bikes Bikes Bikes | Buy Cheap Bikes Online | Best Bikes | Example Bikes. It is repetitive, generic, and doesn't mention the product. It's keyword stuffing and doesn't match the page's heading, so Google is likely to rewrite it. Use something like Trail Runner 29 Mountain Bike | Example Bikes. Keep the real product name first. Length near 50-60 characters is a heuristic. Stuffing is Google guidance. Length is a heuristic.
F10 P2 Meta description content="" is empty. Google will write its own snippet, possibly from poor text. This is not a ranking factor. Write a short, honest, unique summary of the Trail Runner 29, such as frame, wheel size, and who it suits. Google documented, length is a heuristic
F11 P2 Images <img src="/assets/img/IMG_4471.jpg"> has no alt, width, or height, and the file name is a camera name. Alt text helps Google understand the image. Missing dimensions can cause layout shift. Add descriptive alt (for example "Red Trail Runner 29 mountain bike, side view"), set width and height, and use a descriptive file name. Google documented
F12 P2 Parameters The URL has ?color=red&utm_source=news. Tracking and variant parameters create near-duplicate URLs. Fixing F4 with a clean canonical handles this. Don't link internally with utm_ parameters. Google documented
F13 P3 Review claim The "4.9 / 1,280" figure came from somewhere. I can't verify it. If it isn't from genuine customer reviews, it shouldn't be published anywhere. Only publish ratings backed by real, visible reviews. Google documented

4. What is fine

  • A sitemap is declared in robots.txt. Its contents are not checked, and its host should match the preferred host (see F4).
  • JSON-LD is in a supported format, and Product is a type Google supports.
  • There is a single canonical tag and a single title tag.

I can't confirm the HTTP status, HTTPS certificate, or mobile layout from what you pasted.

5. Fix plan

All of this is within your template and robots.txt.

  1. robots.txt: remove Disallow: /products/ and Disallow: /assets/. Keep any rule that blocks only private areas such as cart or checkout. Make the Sitemap: line use the preferred host.
  2. Product template, <head>: remove the noindex meta tag. Set the canonical to the clean, absolute, preferred-host URL. Write a real title and meta description.
  3. Product template, <body>: render the <h1>, description, price, availability, and specs as server-side HTML. Delete the hidden paragraph. Turn the click-handler div into a real link. Fix the image attributes.
  4. Structured data: remove aggregateRating until real reviews are visible. Add offers, image, and description that match the page.
  5. Verify: use URL Inspection in Search Console on the clean URL (Live Test) to check crawl access, indexing allowed, canonical, and rendered HTML. Validate with the Rich Results Test, then request indexing. Google doesn't promise how long indexing takes or that every page will be indexed.

6. Open questions

  • What does the live URL return (status, redirects, X-Robots-Tag)? URL Inspection will show this.
  • Does example-bikes.test redirect to www (or the reverse), and does http redirect to https? That needs your host or server config.
  • Does the sitemap list product URLs with clean canonical forms?
  • Do real customer reviews exist? If so, can the template display them?
  • Is app.js the only source of the product content? If it is, the server-rendered HTML in step 3 matters even more.
  • Core Web Vitals and mobile rendering are not checked. Run PageSpeed Insights once the page is crawlable.

Test run with a fictional product page and robots.txt pasted into the prompt. The model found the blocked product path, noindex, mismatched canonical, hidden text and unsupported rating markup. It could not check live HTTP status, sitemap contents or Core Web Vitals and said so. Nothing was fetched or changed.

它做什么

对照 Google Search Central 的公开指引审查一个页面或小型站点,返回一份简短、带证据、按优先级排序的修复清单。它先查抓取与收录通路(robots.txt、状态码、noindex、canonical、sitemap、渲染、hreflang),再查搜索展示(标题、描述、标题层级、图片、结构化数据)、内容质量(是否有用、以人为本、E-E-A-T 相关提问)、内部链接和页面体验(Core Web Vitals、HTTPS、移动端)。也能结合 Search Console 数据诊断“未被收录”“流量下跌”。每条发现都会写明依据的原文,并标明是 Google 指引还是经验做法;没提供的内容一律写“未检查”。

输出

检查范围与未检查项、摘要、发现表(P0 到 P3,含证据、修复方式、规则或经验)、已通过项、按顺序的修复计划和待确认问题。

适合什么场景

想要一份清晰、诚实、不承诺排名的 SEO 审查的站长、运营和开发。它不会自己抓取网站,不预测排名,也不推荐作弊手法。

说明与风险

低风险:纯指令文件,没有脚本,不联网、不写文件。它只根据你粘贴的内容工作,不会抓取、登录或修改网站。请把输出当作审查意见,而不是排名预测:Google 的排名取决于外界看不到的信号,指引也会变化,细节请以 Search Central 为准。已用一个虚构的商品页试用一次:它查出了被屏蔽的路径、noindex、canonical 不一致、隐藏文字和没有依据的评分标记,并说明了哪些没法检查。没有抓取或修改任何内容。AIBars 原创(MIT)。

SKILL.md 原文包内共 2 个文件