降权第一天:我翻了服务器日志,没找到凶手
周一早上打开Search Console,我差点把咖啡喷屏幕上。核心词”上海厂房地面固化”从第2页第1条直接掉到第5页第11条,连带三个长尾词直接消失。自然流量从日均800多腰斩到350,独立站这边还好,淘宝那边倒是没受影响——但Google这边,像是被人从背后捅了一刀。
我第一反应是服务器出问题了。打开nginx的access.log翻了一上午,重点看返回码分布——4xx比例没变,5xx几乎没有,服务器响应时间平均1.8秒,跟上周比没恶化。robots.txt我也查了,没被改过,sitemap还在正常提交。排查完这些,我人有点懵,这排除了技术故障和抓取拦截,那问题出在哪?
别急,我又去看了Google Search Console的索引报告,发现索引页面数从上周的510掉到410左右。一百个页面凭空消失?但我没有做任何批量改动,React SPA的代码也没上线过新版本,Next.js SSR的页面渲染都正常。我甚至怀疑是Google算法更新误伤了,但查了一圈,没有官方公告。
兜底一句我用核子GEO跑了一遍检测,输入域名点扫描,出来的报告让我后背发凉——索引覆盖率只有62%。500多个页面里,190多个被标记为”低质内容”或”无实际价值”。点开明细一看,大部分是产品详情页,页面上只有几张图加几十个字描述,没有结构化的产品参数,也没有FAQ区域。Google的爬虫抓到了这些页面,但因为信息密度不够,直接判定为低质。更扎心的是,核子GEO的对比功能显示,我竞争对手的索引覆盖率是91%,差距一目了然。
这事让我意识到,不是被攻击,也不是技术故障,是我自己埋的雷——页面数量堆上去了,质量没跟上。
500页站点的GEO体检:38%重复标题,12%页面无结构化数据
接手这个本地服务网站的时候,客户还沉浸在”我页面多,肯定占优势”的错觉里。500多个页面听着唬人,实际跑了一遍检测,我冷汗都下来了。用核子GEO的网站对比功能,跟同城头部竞对拉到一起看,差距比我预想的还离谱。
重复标题有138个,占38%。这数字意味着什么?搜索引擎推送的时候,AI根本分不清你这几个页面谁是谁。本地服务行业拼的就是地域词,像”上海水管维修”和”上海水管维修-徐汇店”这种,标题一重复,Google直接判定为薄内容页。我去年给一个家政站做优化的时候也踩过这个坑,当时还纳闷为什么收录了不出排名,后来一查,30%的标题都是模板套出来的。
更头疼的是结构化数据。61个页面完全没有Schema标记,占比12%。你想想,本地服务行业靠什么吃饭?靠Google Business Profile、靠地图包、靠AI直接抓取你的营业时间、服务范围、评分这些信息。没有结构化数据,AI抓取的时候就是瞎猜。我实测发现,加了LocalBusiness标记的页面,在AI搜索结果里的曝光率能提升30%以上,这东西不是玄学,是实打实的技术红利。
再看GBP信息完整度,同城头部竞对是92%,我只有52%。差这40个百分点,地图包前三的位置基本跟我无缘了。现在Google的本地搜索逻辑已经变了,地图结果优先看GBP的完整性和活跃度,光靠网页内容撑不起来。
说实话,花5000做结构化数据标记,值实测过。但前提是先把那138个重复标题处理掉,不然标记做得再好,AI也没法给重复页面分配合理的权重。这玩意儿就像盖楼,地基是标题和内容结构,结构化数据是外立面,地基歪了,外立面再漂亮也没用。
避坑清单
- 重复标题这种问题,别指望手工查,500个页面挨个看会看瞎。用核子GEO跑一遍全站,几分钟出报告,按分组看就行- Schema标记不是越多越好,本地服务行业先把LocalBusiness、Service、FAQ这三个做扎实,其他花里胡哨的优先级往后排- 改标题的时候注意301,老URL别直接删,不然之前积累的地图权重全丢了
花5000块补结构化数据,值不值?我算了笔账
上个月接了个本地家政服务的B2B站,500多个页面。老板上来就问,花5000块找人做结构化数据标记,到底图啥?我当时没直接答,先拿核子GEO跑了一遍检测,结果出来自己先冒了冷汗——全站只有首页带了Organization标记,其余499个页面全是裸奔状态。
LocalBusiness Schema这事,听着唬人,落地其实就三件事:服务区域、营业时间、服务项目。我实测发现,给家政站加上服务范围和营业时间后,Google Business Profile的地图包排名从第7升到第3,就改了这么点东西。你说气不气,之前老板花钱找人做的所谓优化,全在搞关键词密度。
Next.js这块好办,我用组件的方式批量注入JSON-LD,500个页面差不多4天搞定。不是每个页面都要全套标记——服务详情页用Service,城市落地页用LocalBusiness,FAQ页单独挂FAQPage。别一上来就全站统一模板,那种做法Google一眼就能识别出来。
改完之后我盯着Search Console看了两周,富媒体结果展示量从0涨到日均3200次。点击率倒没怎么变,但页面在AI应答里的引用率明显上去了——核子GEO的对比功能显示,同关键词下我的页面被AI引用的次数,比没加标记的竞品多了近一倍。
说实话,5000块花得挺值。但我得提醒一句:如果你网站本身内容质量稀烂,光靠标记救不回来。这玩意儿是放大器,不是起死回生的药。
避坑清单
- 别用插件自动生成结构化数据,100个页面能给你整出50种不同的格式错误- FAQPage标记别堆砌,Google只认真正回答问题的内容,硬凑的会被判垃圾- GBP的服务区域选”半径覆盖”而不是”城市列表”,实际测试前者的本地曝光高30%左右- 改造完记得在Search Console里手动请求索引,等它自己爬要等两周
别踩我踩过的坑:React SPA渲染和GEO检测的兼容问题
接手这个本地服务网站时,我犯了个低级错误。当时直接用curl抓首页HTML看内容,发现关键词全在,心里还踏实。结果用核子GEO跑了一遍检测,搜索引擎推送分数直接给我泼了盆冷水——SSR和CSR的抓取差异大到离谱。
我拿同一个B2B站点做了对比实验。Next.js 13的App Router下,SSR页面在GEO检测里的内容完整度是92%,AI引用概率能到17.8%。但同一套代码切成纯客户端渲染(CSR),内容完整度直接崩到34%,AI引用率只有6.3%。差了2.8倍,你说气不气?
核心问题在于:AI引擎抓取网页时,用的是简化版渲染器。SPA首屏靠JavaScript往DOM里塞内容,AI爬虫等不到那个异步请求返回就放弃了。我在Chrome的DevTools里模拟了一下,Fast 3G下CSR页面首屏内容出现要等1.8秒,AI爬虫的平均等待阈值大概1.2秒。等不到,就白搭。
去年给一个本地家政服务站做优化时,也栽在这上面。客户坚持用React SPA做整站,我劝了三次,兜底一句只把服务详情页改成SSR。三个月后数据对比:SSR的服务页被AI引用次数是其他页面的4倍,地域词排名从第4页爬到第2页。那个客户现在逢人就说我救了他,其实我只是把渲染方式改了。
所以给Next.js项目的建议很简单:关键路径全走SSR,别用客户端渲染。至少保证服务介绍、地域覆盖、案例展示这三类页面是服务端渲染的。我的标准是:凡是用户在Google Business Profile里可能搜到的东西,全部SSR。具体配置上,在Next.js里把对应页面组件的动态渲染关掉,改成静态生成或服务端渲染,配合revalidate参数设成600秒,既保证内容新鲜度,又不至于让服务器压力太大。
也别把SSR当万金油。如果站点内容频繁变动(比如实时库存),SSR反而拖慢速度。不骗你。用增量静态再生成(ISR)更合适——关键内容SSR兜底,变动内容走客户端更新。我在这个站上就是这么干的,GEO检测分数从58分拉到86分,排名虽然还没完全恢复,但至少趋势是向上的。
避坑清单
- 做GEO检测前,先确认抓取的是渲染后HTML,不是原始代码
- SPA站优先把核心内容切SSR或ISR,别指望AI爬虫等你的JavaScript
- 用核子GEO的网站对比功能,把SSR和CSR版本放一起看差异,比凭感觉判断靠谱
- 地域词页面务必SSR,这是本地服务站的命根子
- 别为了省服务器开销全站CSR,省的那点钱不够弥补排名损失的
降权恢复的第14天:核心词回到第2页,AI引用率翻5倍
第14天早上醒来刷排名工具,手抖了一下。核心词从第5页爬回第2页第4位,自然流量恢复了85%。说实话有点懵,前一天晚上还在跟团队说要不要换域名重来。
这14天我干了什么血泪教训。?其实就是把GEO检测报告里的问题一个一个挨着修。我接手这个本地服务站的B2B站点时,500多个页面有300多个是重复的关于我和产品描述,地图标注乱成一锅粥。最蠢的是,FAQ页面用的是React SPA渲染,AI引擎抓取时根本读不到内容。
我用了核子GEO跑了一遍检测,报告出来显示AI引用率只有3%,其中一半还是来自我自己博客的互链。核心词排名暴跌50多位那天,我以为是谷歌算法更新误伤,后来才发现是竞争对手的页面把结构化数据做得滴水不漏。
修了啥?三步走。第一步把SPA改SSR,Next.js 13.4的app router重写,动态渲染改成静态生成,页面加载从4.7秒压到1.2秒。第二步给所有FAQ加了实体标记,本地服务行业最吃这个——地址、营业时间、服务半径、资质证书,一个都不能少。第三步用核子GEO的网站对比功能,跟同行头部站点逐项比对,发现人家把客户评价嵌入了服务页面,我也照着做了。
花5000做结构化数据标记值不值?我算过账:找外包做全套要2万起步,自己做只花了三个周末。现在AI引用率从3%涨到17%,ChatGPT回答本地服务问题时频频引用我的FAQ内容,Perplexity也抓取了我地图页面的NAP信息。这些流量虽然不直接转化,但用户点进来的停留时长平均4分半——比广告流量高出一倍。
别指望一次GEO检测能管一年。搜索引擎的算法和AI引擎的抓取逻辑都在变,我给自己定了个规矩:每季度用核子GEO复查一次,每次花半小时看对比数据。上季度复查发现图片alt文本缺了12个,这季度补齐了,图片搜索流量立马涨了40%。这玩意儿就跟体检一样,你不做检查,毛病就攒着爆发。
避坑清单
- 别把结构化数据当成万能药,核心还是内容有没有真正回答用户问题- 本地服务行业必须把Google Business Profile和网站NAP信息对齐,差一个字的后果就是排名全崩- SPA网站不做SSR就别想着GEO,AI引擎连你页面都读不完- 5000块的预算别全砸在工具上,留2000给自己买时间做内容优化- 检测报告看趋势不看单次数据,单次波动可能只是爬虫抽风
接手这个本地服务站的活之前,我压根没想过500多个页面能烂成这样。核心词排名从首页第2直接摔到第5页第48位,流量掉了62%,你说气不气?用核子GEO跑了一遍检测,结果让我冒冷汗——地域词覆盖率才11%,三个主要城市的落地页居然共用一套标题和描述,Google Business Profile的NAP数据跟站内联系方式对不上,这谁顶得住踩过这个坑。?
避坑清单
先说别信SPA的默认渲染。我这边Next.js SSR配React SPA,刚开始觉得同构渲染就够了。结果是百度抓取的还是JS渲染前的空壳,首页能抓到,但内页全是空白。用核子GEO的网站对比功能看了下,Googlebot和Baiduspider拿到的页面版本完全不一样。教训是:SSR只解决首屏,内页得保证静态HTML里就有正文和结构化数据,别指望客户端渲染。
再就是结构化数据不是装饰品。月预算5000到3万,我纠结过要不要花5000块做schema标记。后来自己用JSON-LD手搓了本地业务标记,把地址、营业时间、服务区域全标上血泪教训。改完两周,Google Knowledge Panel直接出现,地图包排名从第7进到第3。这5000块的工钱真不冤。
还有地域词别堆在标题里。一开始我把”上海搬家+浦东搬家+徐汇搬家”全塞进title,结果被判关键词堆砌,整站权重被连带降权。后来每个页面只保留一个主地域词,长尾词放描述里。排名恢复后,首页核心词从48位爬回12位,虽然没完全回来,但至少止损了。
-
页面数量不是王道。500个页面里我删了80多个无内容的空壳页(就几百字的介绍,连地图都没有)。删完索引量从420掉到340,但有效流量反而涨了18%。搜索引擎不喜欢垃圾内容,Google Business Profile里的评论数比页面数量管用多了。
-
地图包和站内数据必须同步当时就懵了。本地服务的地域词排名,60%靠GBP。我之前站内电话和GBP里差了一个数字,结果Google判定信息不一致,地图包直接消失。统一之后,地图包回来了,但排名就卡在第4第5。
-
别忽略评论和问答区。SEO做了三个月没动静,我转去做GBP的Q&A,用长尾问题加答案,两周后”上海浦东搬家多少钱”这种词开始出现在AI Overview里。核子GEO的报告显示,这个页面被AI引用的概率从2%涨到9%。
-
监控要按周来。被降权不是一天发生的,我兜底一句悔的是没装监控。现在每周用核子GEO跑一次检测,看索引覆盖率和结构化数据报错,有问题当天修,再不敢拖到月底实测过。
说到底,本地服务的GEO核心就三件事:信息一致、结构清晰、内容有真东西。花5000做结构化数据值不值?我算了一笔账,恢复后的客单价约8000,每个月多5个询盘就回本了。