Claude Skills Have a Token Cost. We Graded Ours and Got a C+

A new paper measured 56,804 published skills competing for fewer than 100 reliable trigger slots. We ran our own skill through its framework, published the bad grade, and shipped the fix.

Alec Lindsay
August 21, 2026
7 min read
Claude Skills Have a Token Cost. We Graded Ours and Got a C+
On this page

TL;DR — Every skill you install in Claude Code pays rent in your context window: its description loads on every message, fired or not, and its body loads on every activation. We ran our own SEO skill through the framework in "@skills: Attention Is All You Have" and it scored a C+. So we cut the body 70%, published every entrant's footprint on the SEO skill benchmark leaderboard, and built a free Skill Grader so you can check yours.

Every installed skill taxes every message

In August 2026, Yin et al. published "@skills: Attention Is All You Have," built on a crawl of 56,804 SKILL.md files across 1,133 public repos. The mechanism they describe is simple. For a skill to auto-trigger, its frontmatter description must sit in the agent's system prompt permanently. That description costs 50 to 280 tokens per skill in their measurements, on every message, whether the skill ever fires or not.

The tax compounds in two ways. First, adherence to standing instructions decays with distance: the paper cites a roughly 39% drop between single-turn and long multi-turn settings, which means the description you installed at message one is fading by message forty. Second, descriptions dilute each other. Instruction-following degrades as concurrent constraints pile up (the paper cites 68% adherence at 500 constraints even for frontier models), so each skill you add makes every other skill trigger less reliably. Their conclusion is that a realistic agent has fewer than about 100 reliable auto-trigger slots, while the ecosystem has published 56,804 candidates for them. That specific ceiling is argued from adjacent evidence rather than measured directly, and the authors say so, but the direction is hard to dispute.

If you build SEO tools for Claude Code, as we do, this is uncomfortable reading. A skill vendor's incentive is to pad the description with trigger keywords so it wins the slot. Every vendor reasoning that way is why the tax keeps rising.

We graded our own skill first. It got a C+

Rather than nod along, we scored the SEOAgent skill against the paper's best practices. The honest report card:

Axis Grade
One CLI + one skill that drives it A
Repo-tracked, git-native delivery A-
Progressive disclosure (references layer) B+
Delivery-tier fit C-
Body size D
One procedure per skill D
Description honesty F
Overall C+

The architecture graded well. The economics flunked. Our SKILL.md body was 17,237 words, about 27,000 tokens loaded on every activation, against a corpus median of 921 words and a 90th percentile of 2,207. Our description was 143 words of exactly the defensive trigger-farming the paper documents, roughly 250 resident tokens against their observed 50-to-280 range. The skill also advertised itself as a replacement for six separate skills, which is the monolith pattern the paper argues against.

The diet: what we cut, and what we refused to cut

We shipped the fix in one release. The body went from 17,237 words to 5,228. Everything that only matters in a specific situation moved into reference files the agent reads at the moment of use: the inbox procedures, the pull-receipt triage, the publishing decision tree, the session-economy rules, the file schemas, and the audit execution mechanics. The orchestration layer keeps only what every session needs.

The part we refused to cut is the description. Implicit activation is the product; a user editing a blog post should get SEO help without knowing a skill exists, so the trigger keywords stay, and a regression test now protects them from well-meaning cleanup. We are open about the trade: our own Skill Grader gives that description a B-to-D on honesty, and we publish the grade anyway. The residency cost of one deliberate trigger is small; the 27,000-token body it used to unlock was the real problem.

Metric Before After
Body words 17,237 5,228
Activation tokens (approx.) 26,886 ~9,000
Reference files 16 22
Resident description tokens ~257 ~257 (kept)

Why one CLI plus one skill wins

The strongest pattern in the paper is empirical, not theoretical. Of the 958 first-party skills published by 21 major companies (AWS, Google, Stripe, Cloudflare, Sentry among them), 79% teach the agent to drive the vendor's own CLI. The steward of the MCP protocol reported cutting an equivalent task from 150,000 resident tokens to 2,000 by moving tool schemas out of the prompt and into a SKILL.md plus executable code.

The reason is that a rule enforced by code costs zero attention. Our skill used to spend paragraphs instructing the agent to verify claims against crawl evidence. Now seoagent verify-recs mechanically rewrites any claim the evidence contradicts, seoagent summary composes the final report from corrected files instead of model memory, and seoagent doctor prints exactly which reference file the current situation needs. The prose that survived the diet mostly says "run this command and follow its output." Prompts decay; exit codes don't.

The benchmark now publishes footprint

Talk is cheap, so we added the measurement to the SEO skill benchmark leaderboard. Every entrant now shows its resident tokens (summed across all skills it installs, since a collection pays the tax per skill) and a light, medium, or heavy band alongside its quality scores. Footprint stays out of the quality composite because cost and correctness are different questions.

The first measurements were sharper than we expected. All four entrants with heavy resident footprints sit in the bottom half of the quality board. The two most-starred entrants are the two heaviest: a 36,000-star collection installs 49 skills carrying 8,770 resident tokens, and a 10,000-star one installs 31 skills carrying 2,687. Stars measure marketing; footprint measures what a skill takes from every message you send afterward. One caveat in our own row: the benchmark measures the pinned npm release, so our published activation cost stays at 26,886 tokens until the post-diet version lands in the pin, and the drop to roughly 9,000 will show with full receipts. The benchmark once ranked us dead last, and how our skill ended up leading it is its own story.

Grade your own skill

The Skill Grader is free and runs the same deterministic checks we used on ourselves: paste a GitHub repo or a raw SKILL.md and it scores resident footprint, description honesty, body size against the corpus, progressive disclosure, factoring, and CLI leverage, with the numbers behind every letter. No signup, and the grader flags our skill's own weaknesses, which is how you know it isn't rigged.

FAQs

How many tokens does an installed Claude skill use?

Two costs apply. The frontmatter description (name plus description) is resident in the system prompt on every message; published skills measure 50 to 280 tokens each. The SKILL.md body loads whenever the skill triggers; the corpus median is 921 words, roughly 1,200 tokens, and heavyweight skills run past 25,000.

Should I shrink my skill's description?

Shrink the body first. The description is what wins the trigger, and a quiet one that never fires helps nobody. Keep the description honest about when the skill applies, move every situational protocol into reference files the body points to, and push deterministic rules into a CLI the skill invokes.

How many skills should I have installed?

The paper's guidance is under ten auto-triggering skills, reserved for things that must fire when you aren't thinking of them. Everything you invoke by name can live in your repo as saved skills at zero resident cost.

Run your skill through the Skill Grader before your users pay its rent.

Tags:AI SEOClaude CodeAgent Skills

Put SEO on autopilot in your own editor

SEOAgent runs as a free skill inside Claude Code, Cursor, and Codex — on the model you already pay for. Audit, plan, and write SEO content right in your repo, with every change reviewed before it ships. No second AI subscription.

Get SEOAgent free