Content
5 promptsContent Velocity Board
21/30โจ What it does
Claude builds a content velocity board for [BLOG] with publishes per week, organic clicks, and a stall week as a working screen you can click in the chat. Check the stall, then swap the sample numbers for your publish log and Search Console.
You are a content SEO analyst who reads publishing pace next to organic clicks, not as a vanity post count. <context> I need a content velocity dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with a realistic publish log so I can click the working screen in the chat. </context> <inputs> - Blog or site: [BLOG] - Weeks: [E.G. LAST 16] - Target publishes per week: [E.G. 2] - Weekly organic clicks: [OR "INVENT A SERIES THAT LAGS PUBLISHES"] - Stall rule: [E.G. 0 PUBLISHES FOR 2+ WEEKS] </inputs> <task> Build the dashboard with: a header for [BLOG]; KPI cards (posts in range, average per week, versus target, latest-week clicks); a weekly bar of publishes with the target line; a line of organic clicks on the same weeks; a table (week, publishes, clicks, click change); and a stall-week callout using my rule. Keep publishes and clicks in separate labeled series. Do not claim a publish caused a click move. Show timing only. Clicking a stall week lists the nearby posts from a sample title array. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Weekly series in labeled JS constants at the top so I can swap a publish log and a Search Console weekly total later. - No causal language. Accessible contrast. - Below-target weeks flagged. </constraints> <format> Return the full HTML so I can click the working screen in the chat, then explain stall math and which series to replace. </format>
Pro tip: Count published URLs that are indexable, not drafts. A busy week of noindex outlines is not velocity.
Publish to Rank Lag
22/30โจ What it does
Claude builds a publish-to-rank lag board for [CONTENT TYPE] with days to first page-one hit and a slow list as a working screen you can click in the chat. Open a slow URL, then swap the sample numbers for your publish dates and positions.
You are a content SEO analyst who measures how long a new URL waits to earn a first strong rank. <context> I need a publish-to-rank lag dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic new URLs so I can click the working screen in the chat. </context> <inputs> - Content type: [CONTENT TYPE] - Site: [SITE] - New URLs with publish dates: [10-16 OR "INVENT"] - First date they hit a position at or above: [E.G. POSITION 10, OR "INVENT LAGS"] - Slow rule: [E.G. OVER 28 DAYS OR STILL WAITING] </inputs> <task> Build the dashboard with: a header for [CONTENT TYPE]; KPI cards (URLs, median days to page one, still waiting, slow count); a histogram of lag days; a table (url, published, first page-one date, days, current position, clicks); and a slow list. Compute days from publish to first page-one date. Still-waiting rows have no page-one date and use a today constant, shown as waiting. Page one means position at or under an editable threshold (default 10). Clicking a slow URL shows its sample weekly position sparkline. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - URL dates and positions in labeled JS constants at the top so I can swap publish dates and a rank export later. - Waiting labeled waiting. Accessible contrast. - Do not invent traffic forecasts. </constraints> <format> Return the full HTML so I can click the working screen in the chat, then write lag math and which arrays to replace. </format>
Pro tip: Start the clock on publish date, not on the day you added the URL to a tracker. A four-week lag on a comparison page is a different story from a news post.
Freshness Decay Watch
23/30โจ What it does
Claude builds a freshness decay watch for [SITE] with age, click change, and a refresh list as a working screen you can click in the chat. Sort by decay, then swap the sample numbers for your page ages and clicks.
You are a content SEO analyst who finds aging URLs that still earn impressions but are losing clicks. <context> I need a freshness decay dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with realistic page ages so I can click the working screen in the chat. </context> <inputs> - Site: [SITE] - Period versus prior: [E.G. LAST 28 VS PRIOR 28] - Pages: [12-20 WITH PUBLISH OR LAST-UPDATED DATES] - Decay rule: [E.G. AGE OVER 180 DAYS AND CLICKS DOWN 20% AND IMPRESSIONS STILL OVER 500] - Today constant: [DATE] </inputs> <task> Build the dashboard with: a header for [SITE]; KPI cards (pages scored, decaying, median age, prune-like count); a scatter of age versus click change; a sortable table (url, age days, last updated, clicks, prior clicks, change, impressions, flag decay/prune/ok); and a refresh list using my decay rule. Compute age from last updated or publish, using last updated when both exist. Prune-like means clicks and impressions both under editable floors. Clicking a decay row highlights the scatter point. Do not invent a refresh outline. Flags only. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Page rows in labeled JS constants at the top so I can swap ages and a Search Console pages export later. - Show decay and prune rules on the page. Accessible contrast. - Sort default: click change ascending. </constraints> <format> Return the full HTML so I can click the working screen in the chat, then write the flags and which array to replace. </format>
Pro tip: Decay is clicks down on an aging URL that still gets impressions. A dead URL with no impressions is a prune candidate, not a refresh.
Topic Cluster Coverage
24/30โจ What it does
Claude builds a topic cluster coverage board for [PILLAR TOPIC] with missing subtopics, ranks, and a next-brief list as a working screen you can click in the chat. Click a gap, then swap the sample numbers for your cluster map and queries.
You are an SEO strategist who maps a pillar topic to supporting URLs and shows the holes. <context> I need a topic cluster coverage dashboard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with a realistic cluster map so I can click the working screen in the chat. </context> <inputs> - Pillar topic: [PILLAR TOPIC] - Pillar URL: [PATH OR "INVENT"] - Planned subtopics: [8-12] - Existing URLs and their best query plus position: [OR "INVENT A PARTIAL MAP"] - Covered rule: [E.G. LIVE URL AND POSITION AT OR UNDER 20] </inputs> <task> Build the dashboard with: a header for [PILLAR TOPIC]; KPI cards (planned subtopics, covered, missing, median position of covered); a cluster map or card grid (subtopic, url or missing, position, clicks); a coverage bar; and a next-brief list of missing subtopics with a sample target query. Compute covered from my rule. Missing cards are visually loud. Clicking a gap card opens the brief line. Do not invent a full outline. One target query per missing subtopic, marked as a sample I can edit. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Cluster rows in labeled JS constants at the top so I can swap a cluster map and query export later. - Do not invent search volume I did not give. Mark missing volume as [VERIFY]. - Accessible contrast. </constraints> <format> Return the full HTML so I can click the working screen in the chat, then write the covered rule and which array to replace. </format>
Pro tip: Keep gap keywords tied to a subtopic you already planned. A keyword with no honest URL is a brief, not a dashboard win.
Output Versus Organic Impact
25/30โจ What it does
Claude builds an output-versus-impact scorecard for [EDITORIAL CALENDAR] with ships, clicks gained, and a zero-lift list as a working screen you can click in the chat. Open a zero-lift post, then swap the sample numbers for your ships and Search Console.
You are a content SEO analyst who puts shipped posts next to the organic clicks they added in a fixed window. <context> I need an output-versus-organic-impact scorecard as one self-contained HTML file with inline CSS, vanilla JS, and a CDN chart library, seeded with a realistic ship log so I can click the working screen in the chat. </context> <inputs> - Calendar or site: [EDITORIAL CALENDAR] - Window after publish: [E.G. FIRST 28 DAYS] - Shipped posts: [10-16 TITLES WITH DATES OR "INVENT"] - Clicks in that window: [OR "INVENT A MIX OF LIFT AND ZERO"] - Zero-lift rule: [E.G. UNDER 20 CLICKS IN THE WINDOW AND AGE OVER THE WINDOW] </inputs> <task> Build the dashboard with: a header for [EDITORIAL CALENDAR]; KPI cards (ships, median clicks in window, zero-lift count, best ship); a bar of clicks in window by post; a weekly ships versus total new-post clicks line; a table (title, published, window clicks, current position, status ok/too new/zero lift); and a zero-lift list. Posts younger than the window are too new, not zero lift. Compute status in JS. Do not claim a post caused a site-wide click move. Per-URL window clicks only. Clicking a zero-lift row highlights the bar. </task> <constraints> - One self-contained HTML file; one CDN charting library only. - Ship rows in labeled JS constants at the top so I can swap the calendar and a Search Console pages export later. - Too-new labeled too new. Accessible contrast. - No causal site-wide language. </constraints> <format> Return the full HTML so I can click the working screen in the chat, then write window and zero-lift rules and which array to replace. </format>
Pro tip: One window per board, such as 28 days after publish. Lifetime clicks will make an old hit look like this month's win.