# Claude Code CRO on a content blog with no funnel

> Ran /page-cro on a content blog with no signup, no funnel. 4 of 7 framework dimensions applied. The convergence with /copy-editing was the lesson.

**Canonical URL**: https://agentcookbooks.com/blog/claude-code-cro-content-blog/

**Published**: 2026-05-02

**Tags**: claude-code, skills, cro

---

The CRO playbook is shaped for SaaS funnels — signup forms, free trials, demo requests, pricing-page conversion. This site has none of them. It's a content blog with eight posts, 153 wiki entries, and a footer email address. The "conversion" goal is a click-through to a post or skill, plus AI-citation readiness for the receipts-first wedge. Running [`/page-cro`](/skills/page-cro/) against the homepage turned out to be a useful discipline anyway — three of the framework's seven dimensions cleanly didn't apply, the four that did surfaced four quick wins and three high-impact changes, and the highest-leverage finding converged with what [`/copy-editing`](/skills/copy-editing/) flagged from a different framework. The convergence is the lesson.

## What I ran

[`/page-cro`](/skills/page-cro/) from Corey Haines's [marketingskills repo](https://github.com/coreyhaines31/marketingskills) — a 7-dimension audit (value prop, headline, CTA, visual hierarchy, trust signals, objection handling, friction) with output framed as Quick Wins / High-Impact / Test Ideas / Copy Alternatives. Trigger phrase: "audit the homepage for conversion." I gave the skill the framing up-front: content blog, no signup, no paid product, no traditional CTA — the conversion is click-through to a post or skill.

Inputs: live homepage at `https://agentcookbooks.com/`, fetched with `curl` to a temp file. 9,413 bytes inline (Astro emits collapsed whitespace, so it's 22 lines). No browser, no cookies. The skill loaded ~150 lines of framework — seven dimensions, page-type-specific frameworks for Homepage / Landing / Pricing / Feature / Blog Post, output format spec.

## Three dimensions cleanly didn't apply

The honest part of the audit is naming what the framework expects that doesn't exist here.

**Trust signals and social proof.** The framework wants customer logos, testimonials with photos, case-study snippets with real numbers, review scores, security badges. There are no customers — content blog. Soft analogues would be GitHub stars, citation count, view count, but the domain attached two days before this audit. Any number worth showing is too small to ship today. Skipped.

**Objection handling.** The framework wants FAQ sections, guarantees, comparison content, process transparency to address price concerns and "will this work for my situation?" There is no price and no commitment. The "is this AI slop?" objection is partially handled in the existing copy ("not vibes" + "no AI-generated filler"). The "will this be useful for me?" objection is unhandled, but adding a role/persona section ("for AI engineers / for marketers / for content operators") would dilute positioning more than the lift would earn. Skipped.

**Form friction.** Zero forms on the page. Skipped.

Three of seven dimensions out. The framework's value here wasn't the seven dimensions — it was the discipline of going through each one and explicitly marking inapplicable ones as inapplicable, instead of performatively running a CRO checklist on a page that doesn't have a funnel. That's a real shape-mismatch finding the wiki receipt should keep: **the skill is sized for SaaS marketing pages; on a content blog, half the framework lights up green by absence.**

## Four dimensions that did apply

### 1. Value proposition (passes, with a gap)

What the page says above the fold:

- Eyebrow: *"Receipts-first recipes for AI agents."*
- H1: *"Recipes for Claude Code — not vibes."*
- Lead: *"Practitioner-tested patterns for Claude Code — hooks, subagents, skills, MCP servers, settings.json, CLAUDE.md, and the workflows that wrap them. Every recipe ships with the JSON, the timings, and the failure modes from real use, so you can copy what works and skip what didn't."*

Differentiation is real: "not vibes" explicitly positions against the AI-content / listicle competition, and the specific scope ("hooks, subagents, skills, MCP servers, settings.json, CLAUDE.md") tells you exactly what the site covers. The eyebrow is broader than the H1 ("AI agents" vs. "Claude Code") — that mismatch is a soft warm-up, not a defect. The real gap: the value prop *makes* claims ("the JSON, the timings, and the failure modes from real use") and *shows* zero artifacts above the fold to back them. Page-body word count is ~145 — below the 200-300 floor for a competitive primary-keyword target — and zero of those words are a quoted config block, a measured number, or a screenshot.

### 2. Headline (specificity gap)

H1 is five words, brand-aligned, no number, no outcome, no timeframe. The alternatives the skill prompted out:

| Alt | Pattern | Trade-off |
|---|---|---|
| "Recipes for *Claude Code* — not vibes." | Current. Brand-aligned, "not vibes" earns its keep | Light on specificity; assumes reader knows the "vibes" reference |
| "Claude Code recipes that ship with the JSON, timings, and the failure mode." | Specificity from the description | Long, comma-shaped |
| "8 Claude Code recipes. Every one with real config." | Concrete count + concrete proof | Breaks brand voice; locks the count to current state |

I'd test #3 against the current — concrete count is the receipts-first wedge applied to the headline itself.

### 3. CTAs (the sharpest finding)

CTA inventory on the page, in order of appearance:

- Nav: Home / Cookbook / Skills / About — four equal-weight links, no primary
- Hero section: zero buttons, zero links
- "What is" body: one inline link to `/skills/`, anchored on the bare word "skills"
- "Latest recipes" section: 8 post-card links + one secondary-styled button ("All recipes →")
- Footer: email / RSS / sitemap

Zero primary CTA above the fold. The hero ends with a description paragraph. A reader who lands and gets the pitch has to scroll past the entire "What is" section before reaching anything they can click on as a next step. The single inline `/skills/` anchor is one word and one occurrence — the site has 153 skills, the bigger surface, and the homepage surfaces one body link to that surface plus one nav link.

The two cheapest fixes:
- **Add a hero CTA.** "Browse the cookbook →" or "Browse 153 skills →" or "Read the latest recipe →".
- **Replace the bare "skills" anchor with a number.** `<a href="/skills/">153 reviewed skills</a>`. Better SEO anchor text and a proof number in the same edit.

### 4. Visual hierarchy (one inversion)

H1 (~36px) → "What is Agent Cookbooks?" H2 (22px) → "Latest recipes" eyebrow (14px uppercase). The visual treatment of "Latest recipes" demotes the post-list section to look like a metadata band, while the "What is" section reads as the dominant H2. The post list is the primary conversion path. Either upgrade "Latest recipes" to full-H2 weight, or accept that the visual demotion is an honest signal that the page hasn't decided what its primary action is.

The bigger gap is multi-modal: zero `<img>`, `<figure>`, or `<svg>` outside the atmosphere CSS effects. seo-geo cites a +156% AI-selection-rate lift for multi-modal pages. One screenshot of `.claude/settings.json` from the latest hook post would land both quick-win 3 (proof artifact above the fold) and the GEO lever (citable visual element) in a single insertion.

## The convergence finding

Quick-win #3 from the page-cro audit — *insert an inline-receipt block below the claim-heavy "What is" paragraph* — is the same gap [`/copy-editing`](/skills/copy-editing/) Sweep 4 (Prove It) flagged on the same homepage three days earlier. Two skills, two different frameworks, one gap.

Copy-editing Sweep 4 reads it as a *claim-vs-proof colocation* problem: a paragraph asserts "the JSON, the timings, and the failure modes from real use" with no proof artifact in the same paragraph. Page-cro reads it as a *value-proposition specificity* problem: the page makes claims it can't substantiate above the fold. Same fix, different rubric framing. The convergence is what makes it actionable — when one framework flags something, you can argue framework bias. When two frameworks land on the same fix from different angles, the prior shifts.

This is the receipts-first wedge applied to the audit itself. Single-skill audits have a known weakness: framework bias. Two-skill convergence is a stronger signal than either skill scoring something at "critical" alone.

The recommended insertion (~80 words, drops in below the "What is" H2):

> *"From last week's harness-setup sprint: 5 misplaced allow rules in user-global settings, 1 permission-survivor pattern from ~50 candidates, 2 remote agents scheduled — 30 minutes total. The config blocks, the timings, and the one routine that got rejected (because remote agents can't see gitignored directories) are in [the post →](/blog/claude-code-harness-setup-sprint/)."*

Single insertion: closes copy-editing Sweep 4, raises seo-content's E-E-A-T Experience score, and pushes the page-body word count from ~145 to ~225 — into the 134-167-word band that seo-geo flagged as the AI-citation sweet spot. Three frameworks earn lift from one paragraph.

## What I'd test, what I wouldn't

Worth A/B-testing:

- **Hero CTA presence.** Current text-only hero vs. hero with a primary CTA button. The skill predicts a meaningful click-through lift; on a content blog the cost is one button.
- **Headline specificity vs. brand voice.** Current H1 vs. *"8 Claude Code recipes. Every one with real config."* The brand voice is intentional; only data resolves whether the count-and-proof variant wins.
- **Inline-receipt block.** Convergence finding above. Test placement (below H2 vs. inline within the "What is" paragraph) and length (one sentence vs. ~80 words).

Not worth testing:

- **Adding trust-signal logo walls.** No customers exist to put on them.
- **Adding an FAQ section for objection handling.** Diluting positioning to address objections that don't fit a content blog ("how much does this cost?" → free) would hurt more than help.
- **Replacing the eyebrow.** "Receipts-first recipes for AI agents" is the brand line. Any change earns its keep on brand grounds, not CRO.

## Where the skill drifted

`/page-cro`'s framework is sized for SaaS marketing pages — homepage, landing, pricing, feature. The skill explicitly lists "Blog Post CRO" as a page-type framework, but the lens is two bullets ("Contextual CTAs matching content topic" / "Inline CTAs at natural stopping points"). For a content-hub homepage that isn't a single blog post but isn't a SaaS landing page either, neither lens fully fits — I read the homepage as "homepage" per the skill's own framework and treated the post-list as the primary conversion target.

The friction worth flagging in the wiki receipt: when the skill catalog publishes a 7-dimension framework, half the value on an off-funnel site is the discipline of marking dimensions as inapplicable explicitly — *not* the dimensions themselves. A future version of the skill that asked "what kind of conversion is happening on this page?" before running the seven dimensions would size the audit to fit faster. Until then, the audit is on you to scope.

The friction also worth flagging: the post-card list is technically navigation, not body content — page-cro counts it in CTA hierarchy but seo-page (in a prior run on the same page) excluded it from body word count. Two frameworks scoping the same DOM differently. On the next multi-skill audit I'll capture which framework counts which DOM region, because the body-word-count gap (145 vs. ~600 if you include card descriptions) is the difference between "below the floor" and "well above" depending on what you call body.

## What I'd change

Two takeaways for any CRO audit on a content site.

**Run the framework. Mark inapplicable dimensions inapplicable. Don't perform.** Half the framework dimensions don't apply on a no-funnel page. Honestly marking them as out is more useful than scoring them at zero. The remaining four dimensions did the load-bearing work.

**Run a second skill against the same page from a different angle.** Single-framework audits have known framework bias. The convergence between page-cro quick-win #3 and copy-editing Sweep 4 was the strongest signal in the entire audit — and it only shows up when you run both. The receipts-first wedge applies recursively: the audit itself becomes more credible when the receipts come from two skills agreeing.

The fix list goes to the open-work backlog; the audit is the receipt.