Amit Kothari
Amit Kothari CEO of Tallyfy, AI advisor at Blue Sheen

One line in your org-wide AI instructions cuts output by 24 percent

In brief

Adding an organization-wide instruction block does add tokens to every prompt, and that objection is correct. A controlled 180-call test on Claude Sonnet 5 shows one brevity line cutting output 23.9 percent and returning 14.2x its own cost, while the block carrying it fails to break even uncached.

An IT director told a client of mine that a company-wide instruction block was a bad idea, because it would “increase the cost of every single prompt.” He was right. It does. I measured it, and the block I was proposing does not pay for itself.

The single line inside it that tells the model to keep answers short does, though. It returns 14.2 times what it costs to carry.

Those two sentences are the whole post. Everything below is the working.

The objection is correct and nobody has priced it

Organization instructions are a text field in an admin console, and they are the one layer every surface actually reads, unlike a CLAUDE.md, which two of your agents skip. Whatever you type goes into the system prompt of every conversation, for every employee, forever. Nobody has to install anything or remember anything. That is the appeal, and it is also the problem: a wasteful line costs you on every request from every seat, and you will never see it on a bill you can attribute.

There’s plenty published on each half of this. Concise chain-of-thought prompting has been measured at roughly a 49% cut in response length. OpenAI has reported that leaner system prompts in its coding evaluations cut total tokens 41 to 66%. On the other side, plenty of writing points out that a 1,500-token system prompt attached to a workflow running 10,000 times a day burns 15 million tokens before a user types anything.

What I could not find anywhere was somebody netting the first against the second. That said, it is the actual question an IT director is asking, and it is the mirror image of what a large context window really costs on the input side. Does the instruction pay for the vehicle carrying it?

So I ran it.

Three arms, because two cannot attribute anything

Two conditions would tell me the block changes output. To claim a specific line did it, the line has to be isolated. Here’s the design:

ArmSystem promptWhat it isolates
Anonethe untouched baseline
Bthe full block, brevity line deletedwhat the rest of the block costs and does
Cthe same block, unmodifiedthe deployed state

B against C is the line acting alone, with every other character identical. A against C is the end-to-end effect including the input the block adds.

Twenty fixed business prompts, the kind a non-technical employee actually types. What is EBITDA. How do I make a pivot table from a sales export. Can I put customer pricing data into a public AI chatbot. Three arms, three repetitions, 180 calls on claude-sonnet-5 at max_tokens 2048 and default temperature, run on 6 August 2026. The block is a generic stand-in for a real one, structurally identical, with a fictional company in place of the client. The script, the analysis and the raw per-call numbers are all here, so you can disagree with me using my own data.

Terminal output showing three-arm token measurement results across 180 API calls

The brevity line reads like this, and it is 48 input tokens:

LENGTH: match the reply to the question. Short question, short answer. No preamble, no recap. Go longer when the work needs it or you’re asked.

Mean output fell from 569.0 tokens to 433.1. That is 135.9 tokens saved on every request, a drop of 23.9%, for 48 tokens carried. Because output bills at five times input on every current Claude model, the arithmetic is not close: the line costs $0.000144 per request and saves $0.002038. It returns 14.2x. Median output fell harder than the mean, from 526 to 382, which tells you the line is squeezing the middle of the distribution rather than clipping a few outliers.

That 5:1 ratio is the part worth carrying around, because it does not depend on which model you run or what the rate card says next quarter. Fable 5 is $10 and $50. Opus 5 is $5 and $25. Sonnet is $3 and $15. Haiku 4.5 is $1 and $5. One output token you avoid pays for five input tokens you carry, everywhere, always.

The block does not break even and that is uncomfortable

Now the part I did not want to find.

The whole block adds 998 input tokens to every request. At 5:1, it needs to save 200 output tokens to wash its face. Across all 20 prompts it saved 173. Uncached, the deployed block is a net cost of $0.000401 per request. It lands at 87% of break-even, which is close enough to feel like a win and is not one.

I sat with that for a while, because I had already told the client the opposite. What rescues it is caching. A cache hit bills at a tenth of standard input, so the same 998 tokens cost $0.000299 instead of $0.002994, break-even drops from 200 saved output tokens to 20, and the block flips to a $0.002294 saving per request with an 8.7x margin. A system prompt is the most cacheable thing you own, byte-identical on every call by construction, so caching it is a no-brainer and the only real question is whether your surface does it for you.

Two things follow, and neither is what people usually take away. First, if you are writing an org block, every line has to earn 5x its length in avoided output, so a block full of aspirational tone guidance is a straight loss. Second, most of the “AI governance” text I get shown would not survive that test, and the authors have no idea because nobody measures the thing they wrote. Running Tallyfy taught me to be suspicious of any document nobody has to defend with a number, and these blocks are usually cobbled together from three other companies’ versions.

The per-request numbers are tiny, which is exactly why they get waved through. Scale the line by itself:

SeatsRequests per user per dayPer year
1505$355
15020$1,421
50020$4,736
2,00020$18,945

Substitute your own headcount. The only measured number there is the per-request net; everything to its right is multiplication, over 250 working days, and I would rather show you the arithmetic than a single confident figure.

One caveat that matters more than the table. If your organization is on a per-seat plan with bundled usage, none of this is cash. You bought the seat, the tokens come with it, and a token you don’t spend buys rate-limit headroom rather than money back. It becomes real money on metered and enterprise agreements, where seat fees and token consumption are unbundled. Say which one you are on before you promise anyone a saving, because I have watched a cost claim get repeated up a chain until it reached a CFO who had every right to ask for the invoice.

Where the answers got worse

Anything can make output shorter. Deleting half of it works fine. The only question worth asking is whether the answer survived, so every response pair went to a blind grader that was never told which arm produced which text, with the order swapped on odd-numbered pairs, judging completeness rather than length. The grader, the summary and all three sets of verdicts are published too, one row per pair with the token counts behind it: A vs B, B vs C, A vs C.

Terminal output comparing answer completeness across the three arms, showing material loss concentrated in compliance questions

The brevity line lost something a reader needed in 4 of 59 pairs, about 7%. Fine. But the block without the brevity line lost material content in 12 of 60, and the damage is not spread evenly. It sits almost wholly on the compliance questions.

Five of the six policy prompts came back materially worse once the governance block was in place. Mean output on those six fell from 709 tokens to 396 before the brevity line was even added.

A model grading model output is evidence rather than proof, so I read the pairs myself. Asked whether customer pricing data can go into a public AI chatbot, the no-block answer lays out four categories of risk, data retention and training, contractual and NDA exposure, competitive intelligence, and regulatory reach, then offers three alternatives: use a business tier with contractual guarantees, anonymise the figures, check the vendor agreement. The block-primed answer is 188 tokens and opens with the word “No.” It names the rule, tells you to report it if you already did it, and offers not one reason and not one alternative.

The second one is easier to count than to argue about. Asked what to do about a spreadsheet sent to the wrong external address, the no-block answer names nine recovery actions. The block-primed answer names three. Among the six it drops are recalling the message and revoking the sharing link, which are the two that stop being possible if you wait.

That’s the finding I’d have missed with a two-arm test, and it’s the one I’d want if this were my rollout. A governance block makes the model answer governance questions by assertion rather than by explanation. It becomes more obedient and less useful, on exactly the questions the block exists to get right, and it does this before you add any brevity instruction at all. Turns out the mechanism is not mysterious once you look, just a bit messy: the block already says “lead with the answer, short direct sentences, no filler openers” in its writing section, and it hands the model a list of non-negotiables. So the model has both a rule to cite and permission to be terse, and it takes both. Nobody who writes one of these blocks intends that. It is an emergent property of putting brevity guidance and policy rules in the same 998 tokens, and you only see it if you grade the answers instead of counting them.

What I would actually do with this

The per-category view shows why the brevity line survives its own quality check when the block does not.

Table of mean output tokens by question type across the three arms

Open-ended questions dropped 41.0%. Rewrites dropped 39.0%. Analysis dropped 0.8%. The line ends with “go longer when the work needs it,” and the model used that release valve on the one category that needed the room. I’d assumed that clause was a nicety to stop people complaining. It’s doing the work, and it is the first thing anyone will delete when they trim the block to fit the 3,000-character field.

So, five things, learned the expensive way:

Keep the brevity line and keep its escape clause. It’s the cheapest instruction in the block by a distance, and the clause is what stops it wrecking the answers that need room.

Make sure the block is cached. Uncached it is a net cost, and paying full input rate for a fixed string you send every single time is the easiest waste in the stack to remove.

Grade the compliance answers separately after any block change. Counting tokens would have told me this rollout was a success. It took a blind completeness grade on six questions to find that the governance block was quietly degrading governance answers.

Price it for the plan you are on, out loud. Headroom on seats, money on metered. Nothing kills credibility with a finance team faster than a saving that never shows up, and the unit economics of this stuff are unforgiving enough already.

And measure your own. Twenty prompts and one evening of API spend is nothing next to the cost of a block that every employee carries on every request for a year. My prompts are not your prompts. The method transfers; the numbers might not.

The thing that keeps nagging me is how invisible all of this is by default. There’s no line item, no dashboard, no alert. Someone types into a text field in an admin console, and a few hundred people pay for it in tokens and in answer quality every day, and the only way anyone ever finds out is if somebody bothers to run the control arm.

About the Author

Amit Kothari is an experienced consultant, advisor, coach, and educator specializing in AI and operations for executives and their companies. With 25+ years of experience, he is the Co-Founder & CEO of Tallyfy® (raised $3.6m, the Workflow Made Easy® platform) and Partner at Blue Sheen, an AI advisory firm for mid-size companies. He helps companies identify, plan, and implement practical AI solutions that actually work. Originally British and now based in St. Louis, MO, Amit combines deep technical expertise with real-world business understanding. Read Amit's full bio →

Disclaimer: The content in this article represents personal opinions based on extensive research and practical experience. While every effort has been made to ensure accuracy through data analysis and source verification, this should not be considered professional advice. Always consult with qualified professionals for decisions specific to your situation.

Related Posts

View All Posts »
Why a Claude share link will not open, and what actually works

Why a Claude share link will not open, and what actually works

A shared Claude conversation returns HTTP 200 whether or not you can read it, and the page carries six characters of visible text. Team and Enterprise chats are organization-only by design, attached files never travel with the snapshot, and the one programmatic route is a Compliance API that has no idea what a share link is.

Your locked-down Claude sandbox is a holding pattern, not a destination

Your locked-down Claude sandbox is a holding pattern, not a destination

Giving everyone Claude inside an isolated VM, no sensitive data allowed, feels like the safe way to start. It is a fine way to start. The trouble is what happens when you leave people there: the leak it was built to stop walks out by copy-paste anyway, the friction recruits the shadow AI you were trying to prevent, and the value never compounds because nothing in an ephemeral box survives the session. A sandbox is a scaffold. Scaffolds come down.

An MCP server is unreviewed code with your file system in scope

An MCP server is unreviewed code with your file system in scope

Treat every MCP server as untrusted code that runs with the access your agent has, because that is what it is. Anthropic docs say the directory lists connectors but does not security-audit them. A registry of approved servers with nothing enforcing it is a memo. The control that binds is a managed allowlist matched by URL or command, never by name.

Your Claude Code deny rules are not a security boundary

Your Claude Code deny rules are not a security boundary

Before you hand Claude Code to hundreds of people you add deny rules for .env and credentials and feel locked down. You are not. Those rules govern Claude own tools, not a Python one-liner that opens the same file, and the control that actually holds, the OS sandbox, reads your whole machine by default and fails open when it cannot start. The baseline worth setting is real. Its dangerous gaps are the defaults you never changed.

You are at phase zero, and the deck you were sold starts at phase three

You are at phase zero, and the deck you were sold starts at phase three

Every enterprise AI maturity model starts a rung above where most companies stand and skips the one that holds the rest up: getting the tool safely into people hands. Your team already has Claude. If IT cannot produce the tenant policy, the egress allowlist, the tool allowlist, and the audit log, you are at phase zero, whatever the deck says.

Your AI has no whoami

Your AI has no whoami

Every enterprise AI platform resolves what you can access through SSO and SCIM. None of them load your team instructions from who you are. Claude gives admins one 3,000-character field for everyone. Microsoft Copilot reads your permissions but not your team playbook. Here is the gap and what works today.

AI advisory services via Blue Sheen.
Contact me Follow 10k+