
seomachine 内容绩效矩阵用 GA4 与 GSC 数据把全部博客内容分为四个象限并排出优化优先级【免费下载链接】seomachineA specialized Claude Code workspace for creating long-form, SEO-optimized blog content for any business. This system helps you research, write, analyze, and optimize content that ranks well and serves your target audience.项目地址: https://gitcode.com/GitHub_Trending/se/seomachine本篇围绕 seomachine 仓库中的.claude/commands/research-performance.md命令文档展开讲解该命令如何通过research_performance_matrix.py将站点的全部内容按“流量 × 排名”划分为四个绩效象限并为每个页面给出预期流量估算、优先级和行动建议。读完后你将理解其数据管道GA4 取流量 → GSC 补排名 → 趋势判断 → 象限分类 → 报告生成的完整实现逻辑掌握四个象限的判定阈值、预期流量 CTR 查表算法以及如何配合/analyze-existing、/performance-review等命令形成月度内容优化闭环。1. 命令定位一句话的用途与运行方式research-performance是 seomachine 提供的 Claude Code 斜杠命令核心目标是“将所有内容按流量和排名分类以优先确定优化对象”Categorize all content by traffic and rankings to prioritize optimization。用法在 Claude Code 中执行/research-performance实际执行命令内部运行仓库根目录下的 research_performance_matrix.pypython3 research_performance_matrix.py耗时文档标注约 24 分钟数据源要求文档表述为“GA4 required, GSC recommended”。不过从源码结构看main() 中 GSC 或 GA4 任一客户端初始化失败都会直接return终止脚本因此实际跑通需要两者都完成配置成本免费只调用 Google 的 GA4 / GSC 读取接口2. 四象限绩效模型阈值、判定规则与优先级脚本在文件头部定义了两个全局阈值research_performance_matrix.py常量取值含义TRAFFIC_THRESHOLD_HIGH500月浏览量 ≥ 500 记为“高流量”POSITION_THRESHOLD_GOOD15GSC 平均排名 ≤ 15 记为“排名良好”在此之上叠加两个趋势条件见 categorize_page()declining_trend衰退趋势trend_direction declining且trend_percent -20strong_growth强劲增长trend_direction rising且trend_percent 30文档定义的四个象限与源码判定逻辑的完整对应关系如下象限条件动作建议源码原文语义优先级⭐ Stars高流量 排名良好正常保持内容新鲜度若出现衰退趋势 → “密切监控调查原因”若强劲增长 → “乘胜追击扩展相关内容”衰退时 CRITICAL增长时 HIGH否则 MEDIUM Overperformers高流量 排名不佳分析流量来源可能是推荐/社交流量很强改进 SEO 以同时拿到自然搜索流量HIGH⚠️ Underperformers低流量 排名良好CTR 问题——重写 title 和 meta description若同时排名在下滑 → “紧急排名下滑叠加低 CTR需要大改 title/meta”衰退时 CRITICAL否则 HIGH Declining低流量 排名不佳月浏览量 100 且排名 50 → 考虑 301 重定向或完全重写有衰退趋势 → 大改内容更新数据、案例、加深深度否则 → 显著优化或与更好内容合并前两种分别为 MEDIUM / HIGH否则 MEDIUM文档中对四象限的策略解读同样值得保留Stars是你最好的内容要保鲜并用主题簇cluster扩展Underperformers是快速见效项QUICK WINS先改 title/meta 提升 CTRDeclining内容正在失去牵引力需要刷新或重定向Overperformers是在排名不佳的情况下仍拿到流量应查明原因并优化 SEO。判定细节可逐行核对 categorize_page()函数返回(category, action, priority)三元组先判 Star再判 Overperformer、Underperformer最后落入 Declining 分支属于典型的“流量高低 × 排名好坏”二分类加趋势修正的结构。3. 数据管道六步拆解命令文档描述的 6 步流程取页面 → 过滤内容页 → GSC 富化 → 计算趋势 → 分象限 → 出报告在 main() 中有完整落地下面逐步展开。3.1 从 GA4 拉取近 90 天页面数据脚本调用ga.get_top_pages(days90, limit500)research_performance_matrix.py。底层实现在 GoogleAnalytics.get_top_pages()时间窗口90daysAgo至today维度pagePathpageTitle指标screenPageViews、sessions、averageSessionDuration、bounceRate、engagementRate排序按screenPageViews降序取前 500 行有一个从源码结构看需要特别注意的前提get_top_pages()的path_filter参数默认为/blog/而矩阵脚本调用时并未覆盖该参数因此GA4 拉取阶段只会返回路径中包含/blog/的页面。如果你的站点文章不在/blog/前缀下需要先让页面进入这份数据例如调整调用时的 path_filter 传参否则内容页数量为 0。3.2 只保留“内容页”is_content_page() 采用“排除 形态”双重规则路径小写后命中以下任一模式即排除/tag/、/category/、/author/、/search/、/api/、/login/、/signup/、/account/、/dashboard/、/checkout/、/cart/、/thank-you/、/404/以及.xml、.json、.jpg、.png、.gif、.pdf等静态资源后缀通过排除后还要求路径中/至少出现 2 次且长度大于 10 字符对应/blog/article-title/这类文章路径形态。3.3 用 GSC 逐页补排名数据对每个内容页调用gsc.get_page_performance(path, days90)底层实现在 GoogleSearchConsole.get_page_performance()通过 Search Consolesearchanalytics().query()按page维度过滤URL 以 http 开头时用equals否则用contains返回clicks、impressions、ctr百分比保留两位小数、avg_position保留一位小数并额外附带该页点击量 Top 10 关键词。矩阵脚本对数据缺失做了明确的兜底research_performance_matrix.py页面在 GA4 有流量但 GSC 查不到排名时记为avg_position 100、impressions 0、clicks 0、ctr 0——这会自然把它归入排名不佳的一侧。3.4 计算 180 天流量趋势每页再调用ga.get_page_trends(path, days180)实现在 GoogleAnalytics.get_page_trends()。核心算法默认按week粒度拉取时间序列granularity也支持day取时间序列最后 4 个周期与最前 4 个周期的浏览量之和计算trend_percent (recent - older) / older * 100方向判定 10%为rising -10%为declining其余为stable样本不足 2 个周期时记unknown。矩阵脚本对趋势获取失败做了静默兜底异常时回退为stable / 0%research_performance_matrix.py单页失败只打印错误并跳过不中断整体流程。3.5 归一化为“月浏览量”并分类90 天数据要先换算成月度口径research_performance_matrix.pymonthly_pageviews int(page.get(pageviews, 0) * (30/90))随后传入categorize_page(monthly_pageviews, avg_position, trend_direction, trend_percent)得到象限、动作与优先级最终每个页面形成一条记录字段包括path、title、monthly_pageviews、pageviews_90d、avg_position、impressions、clicks、ctr、trend_direction、trend_percent、category、action、priority、engagement_time、bounce_rateresearch_performance_matrix.py。3.6 生成 Markdown 报告脚本最后将报告写入research/performance-matrix-YYYY-MM-DD.md按运行日期命名。注意这是相对工作目录的路径从源码结构看write_markdown_report() 直接open(filename, w)运行前需保证research/目录已存在否则写文件步骤会失败。4. 预期流量估算用“位置 CTR 查表”量化 CTR 缺口对 Underperformer 象限脚本会计算“排名理应带来的流量 vs 实际流量”的差值量化改 title/meta 的收益空间。核心函数 estimate_expected_traffic() 内置了一张按平均排名分档的期望 CTR 表平均排名取整期望 CTR第 1 位31.6%第 2 位15.7%第 3 位10.5%第 4–5 位6.7%第 6–10 位4.0%第 11–15 位1.5%第 16–20 位1.0%其他/超出范围0.5%默认值计算公式先把 90 天曝光归一化为月度impressions * 30/90再乘以该排名档位的期望 CTR即得expected_traffic。脚本控制台与报告中的Missing: {gap} pageviews/mo缺口 预期 − 实际月浏览量就是用它算出来的——这为“先修 Underperformer 的 title/meta因为低投入高回报”提供了可量化的依据。5. 报告结构每类内容给出什么、以及推荐工作流生成的 Markdown 报告write_markdown_report()包含以下章节各象限各列前 20 条Performance Distribution四象限数量统计表Stars / Overperformers / Underperformers / Declining⭐ STARS每页给出 URL、月流量、平均排名、趋势、优先级动作统一为“保持内容更新、增加相关问答小节、围绕该页创建支撑性 cluster 内容并内链、每周监控排名变化”⚠️ UNDERPERFORMERS按排名升序排名最好的排最前每页给出排名、实际与预期月流量、流量缺口、当前 CTR以及 5 条具体步骤——重写更吸引人的 title、在标题中加入年份/数字/强词、用清晰的价值主张重写 meta description、按情况加 FAQ schema、测试不同标题变体 DECLINING按趋势恶化程度升序月浏览量 50 的页面建议“301 重定向到相关高绩效内容或若主题仍有价值则完全重写”否则建议“更新全部数据与案例到当年、新增 500 字内容、更换图片视觉、强化关键词指向与内链” OVERPERFORMERS按月流量降序附调查清单——在 GA 中查看流量来源推测为推荐/社交、分析哪些外部站点链向该页、改进 SEO 以捕获自然搜索流量、优化“差一点就能排上”的关键词Key Metrics全站月总流量、Star 内容流量占比、需要关注的页面总数Recommended Workflow第 1 周集中修 Underperformer列出 CRITICAL 级页面及其缺失点击量第 2–3 周刷新 Declining 内容列出 HIGH 级及趋势百分比第 4 周起围绕 Top 3 Star 建内容簇。控制台输出与报告呼应先打印四象限分布与 CRITICAL / HIGH / MEDIUM 优先级计数再按类别各展示 Top 5research_performance_matrix.py最后给出 5 条下一步建议查看报告、从 CRITICAL 项开始、先修 Underperformer 标题与 meta、刷新或重定向 Declining、围绕 Star 扩展相关主题。6. 运行前提环境配置、依赖与测试该脚本通过dotenv读取环境变量research_performance_matrix.py 顶部load_dotenv()并把data_sources加入sys.path依赖安装见 data_sources/requirements.txt。关键环境变量来源data-sources-setup.md 与两个客户端模块的构造函数# GA4必填矩阵脚本硬依赖 GA4_PROPERTY_ID123456789 GA4_CREDENTIALS_PATHcredentials/ga4-credentials.json # GSC实际运行同样需要 GSC_SITE_URLhttps://yoursite.com/ GSC_CREDENTIALS_PATHcredentials/ga4-credentials.json配置要点GA4需在 Google Cloud 启用 Google Analytics Data API创建服务账号并下载 JSON 密钥将服务账号邮箱以 Viewer 角色加入 GA4 属性Property ID 格式如123456789。客户端校验逻辑见 GoogleAnalytics.init()缺少GA4_PROPERTY_ID或凭证文件不存在时直接抛ValueError访问 scope 为analytics.readonly。GSC需在 Search Console 中添加服务账号Full 权限实际仅为读取GSC_SITE_URL支持 URL 前缀属性https://yoursite.com/或域属性sc-domain:yoursite.com两种格式需与控制台中的属性名完全一致。客户端实现见 GoogleSearchConsole.init()scope 为webmasters.readonly。共享凭证setup 文档推荐 GA4 与 GSC 复用同一个服务账号 JSONdata-sources-setup.md “Google Search Console Setup” 一节。排障参考GA4 侧常见 “Permission denied / API not enabled / Invalid credentials”GSC 侧常见 “User does not have sufficient permissions / Site not found”处理办法均在 contenteditable="false">【免费下载链接】seomachineA specialized Claude Code workspace for creating long-form, SEO-optimized blog content for any business. This system helps you research, write, analyze, and optimize content that ranks well and serves your target audience.项目地址: https://gitcode.com/GitHub_Trending/se/seomachine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考