← Back to Blog
AI & MarketingAI MarketingAIAutomation

What 15 Marketing Tasks Cost in LLM Tokens

I priced 15 named marketing jobs against the live rate cards for Claude, GPT and Gemini. The whole set runs once for between $0.07 and $3.32. Editing the output costs about $317. That ratio is the post.

SPSantosh Paudel· September 6, 2026· 13 min read
Table of contents

Running fifteen common marketing jobs through an LLM once each (brief, draft, edit, keyword clustering, schema, ad variants, repurposing, data analysis, competitor teardown and six more) costs between $0.07 and $3.32 depending which model you pick. Editing that same output to publishable quality takes about 6.3 hours, which is $317 at a $50/hour self-rate. The entire spread between the cheapest and the most expensive model, across all fifteen jobs, is $3.25, less than four minutes of editing time. Here is the table, the arithmetic, and the script.

The rates, checked on 2026-09-06

I pulled these off the vendors' own pricing pages the day I wrote this. Prices per million tokens, standard short-context rates, not batch and not cached:

ModelInput / MTokOutput / MTokSource
Claude Haiku 4.5$1.00$5.00platform.claude.com pricing
Claude Sonnet 5$2.00$10.00same
Claude Opus 5$5.00$25.00same
GPT-5.6 Luna$0.20$1.20developers.openai.com pricing
GPT-5.6 Terra$2.00$12.00same
GPT-6 Astra$10.00$50.00same
Gemini 3.5 Flash-Lite$0.30$2.50ai.google.dev pricing
Gemini 3.5 Flash$1.50$9.00same
Gemini 3.1 Pro Preview$2.00$12.00same

These numbers rot. Two examples from the pages themselves. Anthropic's page notes that Sonnet 5's $2/$10 introductory rate was scheduled to rise to $3/$15 on 1 September 2026 and that the increase was cancelled, so the figure I am quoting became permanent five days before I published. Google's page carries a dated increase, but only on Gemini 3.8 Flash, 3.7 Flash and 3.6 Flash: those three hold through 31 December 2026 and rise on 1 January 2027. None of the three Gemini rows I priced carries that footnote, so do not read it as a countdown on the cells above. Both vendors also charge more past a long-context threshold, which no job in my table crosses: Gemini 3.1 Pro Preview goes to $4/$18 over 200k, and OpenAI lists long-context rates for all three of its models here, up to $20/$75 on Astra. Re-check all three pages before you trust a cell in my table. That is why the script below keeps the rate card as a dict at the top: you edit nine rows, not the logic.

The token envelopes are assumptions, and I am labelling them as such

Every input and output figure in the next table is my estimate, not a measurement of your workload. I built them from the shape of the jobs I run on this site. Two things move them hard.

  • How much context you paste. The same "write me a draft" is 3,000 input tokens with a brief attached and 40,000 with three competitor pages attached.
  • Whether the model thinks first. Reasoning is billed as output. A model that produces 400 visible words after 3,000 tokens of reasoning bills you for roughly 3,400.

Treat the envelopes as a starting shape. Replace them with your own logged usage numbers the first week you can.

Fifteen marketing jobs, priced

Each cost is one run of one job. The three price columns are the cheapest, a mid-tier and the most expensive of the nine models above. Both ends are OpenAI's, because that is where the extremes of the current rate card sit; the mid column is Anthropic's, and every Gemini row lands inside the same band. So the headline spread is one vendor's own ladder at the edges. Worth knowing before you read it as a market-wide range. The last column is my honest guess at how long I spend fixing the output.

JobInput tokOutput tokGPT-5.6 LunaClaude Sonnet 5GPT-6 AstraMy edit (min)
Content brief from one keyword2,0001,200$0.0018$0.0160$0.080010
First draft, 1,500-word post3,0002,500$0.0036$0.0310$0.155045
Line edit of a 1,500-word draft3,5002,200$0.0033$0.0290$0.145025
Keyword clustering, 500 keywords12,0003,000$0.0060$0.0540$0.270020
JSON-LD schema for one page2,500900$0.0016$0.0140$0.070010
10 ad headline/description variants1,200800$0.0012$0.0104$0.052015
Repurpose post into 5 LinkedIn posts2,5001,500$0.0023$0.0200$0.100020
Titles + metas for 20 URLs6,0001,400$0.0029$0.0260$0.130025
Search Console export analysis, 2,000 rows45,0002,000$0.0114$0.1100$0.550030
Competitor teardown, 3 pages25,0002,000$0.0074$0.0700$0.350030
Internal-link map across 100 posts60,0001,500$0.0138$0.1350$0.675040
Five-email nurture sequence2,0003,000$0.0040$0.0340$0.170050
45-min transcript to show notes12,0001,500$0.0042$0.0390$0.195015
FAQ block from a support inbox15,0001,200$0.0044$0.0420$0.210020
Monthly report narrative from metrics8,0001,800$0.0038$0.0340$0.170025
All fifteen, once199,70026,500$0.0717$0.6644$3.3220380

The most expensive single job on the most expensive model is 67 cents. The cheapest is a tenth of a cent.

Run it against your own rate card

Python standard library, no dependencies. Paste your own envelopes into TASKS and your own rates into PRICES.

PRICES = {  # $ per million tokens, (input, output) — checked 2026-09-06
    "Haiku 4.5": (1.00, 5.00),
    "Sonnet 5": (2.00, 10.00),
    "Opus 5": (5.00, 25.00),
    "GPT-5.6 Luna": (0.20, 1.20),
    "GPT-5.6 Terra": (2.00, 12.00),
    "GPT-6 Astra": (10.00, 50.00),
    "Gemini 3.5 Flash-Lite": (0.30, 2.50),
    "Gemini 3.5 Flash": (1.50, 9.00),
    "Gemini 3.1 Pro Preview": (2.00, 12.00),
}

# (job, input tokens, output tokens, my editing minutes) — ASSUMPTIONS
TASKS = [
    ("brief", 2000, 1200, 10),
    ("draft", 3000, 2500, 45),
    ("line edit", 3500, 2200, 25),
    ("keyword clustering", 12000, 3000, 20),
    ("schema", 2500, 900, 10),
    ("ad variants", 1200, 800, 15),
    ("repurpose", 2500, 1500, 20),
    ("titles+metas", 6000, 1400, 25),
    ("gsc analysis", 45000, 2000, 30),
    ("competitor teardown", 25000, 2000, 30),
    ("internal-link map", 60000, 1500, 40),
    ("email sequence", 2000, 3000, 50),
    ("show notes", 12000, 1500, 15),
    ("faq block", 15000, 1200, 20),
    ("report narrative", 8000, 1800, 25),
]

HOURLY = 50.0  # what you charge yourself for an hour of editing

def cost(model, tin, tout):
    pin, pout = PRICES[model]
    return (tin * pin + tout * pout) / 1_000_000

tin = sum(t[1] for t in TASKS)
tout = sum(t[2] for t in TASKS)
edit = sum(t[3] for t in TASKS) / 60 * HOURLY

rows = sorted((cost(m, tin, tout), m) for m in PRICES)
for c, m in rows:
    print(f"{m:<24} tokens ${c:7.4f}   + edit ${edit:8.2f}"
          f"   model share {c / (c + edit) * 100:5.2f}%")

spread = rows[-1][0] - rows[0][0]
print(f"\ncheapest-to-priciest spread: ${spread:.2f} "
      f"= {spread / HOURLY * 60:.1f} minutes of editing")

On my numbers the model share of total cost runs from 0.02% on GPT-5.6 Luna to 1.04% on GPT-6 Astra. The last line prints $3.25 = 3.9 minutes of editing.

Model choice is a rounding error. Editing time is the bill.

Set the fifteen jobs against a $50/hour self-rate:

  • Tokens, cheapest model: $0.07
  • Tokens, most expensive model: $3.32
  • Editing, 380 minutes: $316.67

Picking Astra over Luna for everything raises the total by 1.03%. If Astra saves four minutes of editing across the fifteen jobs, it has paid for itself. If a cheap model costs you fifteen extra minutes untangling a mangled table, it has cost you nearly four times the entire frontier premium: $12.50 of your time against a $3.25 token spread.

That inverts how most people shop for models. The question is not which model is cheapest per token — it is which one hands you output you edit less. I wrote up that head-to-head in Claude vs ChatGPT for marketing, and the case for hosted open models, where the per-token gap is far wider and the editing gap still decides it, in choosing between Groq, DeepSeek and Llama.

The scale where it flips

Multiply by 100 runs a month and the ranking holds: $332 of Astra tokens against $31,667 of editing. Token cost only dominates when a human stops reading the output, which is the regime where the output has stopped being worth publishing.

What this means for content ROI

If tokens are 1% of production cost, a cheaper model is not a lever worth pulling. The levers are editing throughput, how many pieces you ship, and what each shipped piece earns. To see what a post has to return to justify 25 minutes of editing, I built the content ROI calculator for that arithmetic. It runs in your browser and sends nothing anywhere.

Where this arithmetic breaks

Three honest failure modes.

Agent loops multiply the input side

A single-shot task bills the envelope once. An agent that calls tools re-sends the whole conversation every turn, so a ten-turn loop over a 20,000-token context bills closer to 200,000 input tokens. The agent system on this site is a tool loop of that shape, and I described how it is put together in the agent architecture post. Pricing agents rather than prompts? Multiply the input column by your average turn count. Prompt caching is what makes that survivable: Anthropic puts a cache hit at 0.1x base input on most models.

Server-side tools bill outside the token meter

The same page lists web search at $10 per 1,000 searches on top of tokens, while web fetch adds no charge beyond the tokens the fetched page occupies. My "competitor teardown, 3 pages" row is honest only if I hand the model the URLs. If it has to search for them, add a cent per search. Trivial, but a line the token table does not contain.

Token counts are not comparable across models

Anthropic's page also notes that Claude 4.7 and later use a newer tokenizer producing roughly 30% more tokens for the same text. A fixed "input tokens" column is therefore a fiction the moment you compare across generations: identical text, different count, different bill. That applies to my own table, which I should say plainly: it holds one input/output pair constant across all three columns, so on identical copy the Claude Sonnet 5 column is understated by roughly 30% against the two GPT columns. Inflate it and the $0.66 total becomes about $0.86. That is a twenty-cent move, a quarter of a minute of editing, so the conclusion holds, but the column is not a like-for-like count. If you are optimising at the margin, count tokens with each vendor's own counting endpoint.

What this cost me on my own site

Here is the part that made me write the post. In September 2026 I audited a seeded corpus of 279 posts on this domain. About 150 of them averaged 380 words with no table, no code, no internal link and no image. I cut the published count from 267 to 103, a 61% cut. The prune file ran 181 unpublish statements; roughly ten of those targeted slugs that had never been seeded into the database, which is why 267 minus 181 does not land on 103.

Price the generation of those 279 posts at my draft envelope on Sonnet 5: 279 × $0.031 = $8.65. The audit, the scoring, the redirect map and the fallout (32 broken internal links found live afterwards, 22 of them because a seed file had been committed but never run against the database) took days.

Across the 85 days to 3 September 2026 the site produced 22 clicks from 4,553 impressions over roughly 390 indexed URLs. The blog's own share of that was 16 clicks from 3,965 impressions across its 103 pages. Nine dollars of tokens bought a multi-day cleanup and 22 clicks for the whole domain. That was an editing failure with an $8.65 model bill attached to it. The pipeline that replaced the seed dump is in keyword to published, and the tool list is in the AI content stack I actually use.

How I pick a model now

  • Default to the mid tier for anything a human will read before it ships: Sonnet 5 or Terra class.
  • Drop to the budget tier for mechanical transforms with checkable output: titles and metas, schema blocks, transcript cleanup.
  • Go frontier for the two jobs where a wrong answer costs an hour: analysis over a real export, and anything I publish without a second pass.
  • Never pick on price alone. At 1% of total cost, price carries almost no information.

FAQ

How much does it cost to write a blog post with AI?

On the envelopes above, 3,000 input and 2,500 output tokens, a 1,500-word first draft costs $0.0036 on GPT-5.6 Luna, $0.031 on Claude Sonnet 5 and $0.155 on GPT-6 Astra, at rates checked 6 September 2026. Editing is the real cost: 45 minutes, or $37.50 at a $50/hour self-rate.

Is the cheapest LLM the right choice for marketing work?

Only when the output is machine-checkable. Across fifteen jobs the entire gap between the cheapest and priciest model here is $3.25, under four minutes of editing time. Any model that saves you more than four minutes of cleanup has paid for the upgrade.

How do I estimate token usage for a marketing task?

Count characters and divide by roughly four for a first pass, then log the real usage field the API returns for a week and throw your estimates away. Do not compare counts across model generations, because tokenizers differ and Anthropic documents about a 30% difference between its own.

Does batching or caching change the answer?

It shrinks a number that was already a rounding error. Anthropic's Batch API discounts input and output by 50% and a cache hit costs 0.1x base input; OpenAI's page shows cached input at roughly 10% of standard. Worth switching on at volume; skip it entirely if you publish four posts a month.

Wondering whether a content system pays off at your volume? The token bill is never the reason it fails — editing capacity is. Run your numbers in the content ROI calculator or get in touch.

Free resource

Get the AI Automation Playbook

The real architecture behind a 6-agent AI content team — what it saves, what it gets wrong, and the propose-then-approve pattern that makes it safe to trust.

No spam. Unsubscribe anytime.

Browse all free guides →

Want to implement this with guidance?

Santosh helps founders turn insights like this into real systems.

AI Content Systems

External Resources

Further Reading & Tools

Related Posts

01
14 min
AutomationAI
TodayAI Workflow

Wiring GA4, Search Console and a CRM to MCP

Model Context Protocol lets a model query your analytics stack directly. What that actually buys you, a real tool definition, and the three places it breaks.

Read article
02
15 min
AI AgentsAutomation
TodayAI & Marketing

Autonomous Marketing Agent Architecture in Practice

Most writing about agentic marketing is speculation. This is the architecture of a system that runs on my own site every weekday: the task registry, the tool layer, the approval queue, the provider dispatch, and what it costs.

Read article
03
13 min
AI AgentsAutomation
TodayAI & Marketing

Why My Marketing Agent Proposes Instead of Publishing

My autonomous agents cannot write to a single business table. Every action they want to take lands in a pending_actions queue and waits for me to click approve. Here is the schema, the state machine, and the honest cost.

Read article