Claude vs ChatGPT: A Scorecard for Research and Writing
The honest answer is task-dependent. A weighted rubric for market research, a second one for content creation, verified September 2026 API prices, and the one randomised study I could find on AI-written marketing copy.
Table of contents
For market research, the model is not the deciding variable. The retrieval layer is, and both tools hand you citations you have to open and check by hand. For content creation, the two are closer than the comparison posts suggest: Claude holds a style guide across a long edit better in my use, ChatGPT reaches a usable first draft faster, and the one randomised study I could find could not separate LLM-written marketing emails from human-written ones on profit.
So the answer is task-dependent, and the task that decides it is editing, not drafting. Below are two weighted rubrics, my marks against both, the arithmetic in runnable Python, and the current per-token prices from the vendors' own pages.
This is the narrow version. The twelve-task benchmark across the full marketing workflow lives in Claude vs ChatGPT for marketing. This post only covers the two jobs that page skims.
What I am claiming, and what I am not
I am not running a controlled study. I searched for one that pits Claude against ChatGPT on marketing research or copy under randomisation, and I did not find one. There are plenty of blog shootouts with a sample size of one prompt. There is a serious RCT on AI-written email marketing, which I cite below — but it compares LLM against human, not model against model.
So: the weights in the rubrics are the argument, and I will defend them. The marks are my judgement from daily use while building this site — n equals one, no blind grading, no repeated trials. I have written the anchors for each score so you can re-mark them with your own work and get a different answer. That is the point of publishing a rubric instead of a verdict.
The two things I did verify properly are the prices and the published research. Every number in the cost table came off Anthropic's and OpenAI's own pricing pages on 6 September 2026.
Job one: market research
By market research I mean the three things I actually use these tools for: synthesising a pile of sources into a position, tearing down a competitor's site and pricing, and pulling structure out of free-text survey responses.
The rubric
| Criterion | Weight | A score of 1 | A score of 5 |
|---|---|---|---|
| Source traceability | 3 | Claims arrive with no URL, or with a URL that does not contain the claim | Every load-bearing claim has an openable link, and the linked page says what the summary said |
| Handles contradictions | 3 | Averages two conflicting sources into a smooth, wrong sentence | Names the disagreement, says which source is more recent or better-scoped |
| Structured extraction | 2 | Prose summary when you asked for a table or JSON | Returns the schema you specified, same keys every run |
| Long-run stamina | 1 | Loses the brief by source twelve | Still applying the original filter at the end of a long run |
| Cost per run | 1 | Cost forces you to ration the work | Cheap enough to re-run when the brief changes |
Source traceability and contradiction handling carry weight 3 because they are the two failures that make a research output actively worse than no research — you ship a confident claim you cannot defend. Extraction and stamina are conveniences. Cost barely matters at these volumes, which the table further down makes obvious.
Both tools fail the same test
The most useful published work here is the Tow Center for Digital Journalism's study, run by Klaudia Jaźwińska and Aisvarya Chandrasekar and published in Columbia Journalism Review in March 2025. They fed 1,600 queries to eight AI search tools, each query quoting a real article and asking for the title, publisher, date and URL. The tools returned incorrect citations more than 60% of the time overall — from 37% for the best performer to 94% for the worst — and frequently invented links rather than declining to answer. (CJR, AI Search Has a Citation Problem)
Two caveats I will not skip. That study is from March 2025, and the tools have moved since. And Claude was not in the test set — ChatGPT Search was, Claude was not. So it is not a model comparison and I am not using it as one. What it establishes is narrower and more useful: citation accuracy and answer quality come apart, badly, and a fluent research summary tells you nothing about whether its sources exist.
The academic benchmarks agree that these are two different things. DeepResearch Bench (arXiv:2506.11763) uses 100 research tasks written by domain experts across 22 fields and scores report quality and citation accuracy on separate tracks. You do not build two tracks unless the two scores disagree.
The practical consequence for a competitor teardown: I open every cited URL before the claim goes in a deck. That takes about fifteen minutes on a twenty-source report and it is not optional in either tool.
Where they diverge in my use
Claude is better at telling me two sources disagree instead of blending them. ChatGPT is better at going and finding a source I did not name — the retrieval reaches wider. That is a real difference and it is mostly about the search stack, not the model. If you want the general version of that argument, I wrote it up in how I pick models by job rather than by brand.
Job two: content creation
Drafting, editing to a style guide, and repurposing one piece into another format.
The rubric
| Criterion | Weight | A score of 1 | A score of 5 |
|---|---|---|---|
| Holds a style guide | 3 | Reverts to house LLM voice by paragraph four | Still obeying the banned-words list at 1,500 words |
| Edits without rewriting | 3 | Asked to cut 20%, returns a different article | Asked to cut 20%, returns your article, 20% shorter |
| First draft usable | 2 | Structurally wrong, faster to start over | Skeleton is right, needs facts and voice |
| Repurposing fidelity | 1 | Invents claims that were not in the source | Says only what the source said, in the new format |
| Cost per run | 1 | Rationing edits | Re-run freely |
Note what is weighted low: first-draft quality. That is deliberate, and the next section is why.
The one randomised study I could find
Jean-Pierre Dubé and Ariel Xu ran three randomised controlled trials with the wine retailer Wine Access, published in Quantitative Marketing and Economics in January 2026 (SSRN version). The trials ran across roughly 27,500 newsletter subscribers, with test cells for email content written by salaried human writers, by an LLM, and by a hybrid — LLM draft, human edit.
The headline: against a no-email control, all three cells roughly doubled gross profits from orders, and the three were largely indistinguishable from one another. Chicago Booth Review's write-up of the study puts it as profits that "far outpaced the control group and were generally indistinguishable from one another" (Chicago Booth Review).
Read that carefully, because it is easy to over-claim in both directions. It is not a Claude-versus-ChatGPT result — the comparison was LLM versus human, and anyone citing it as a model shootout is misreading it. What it does support is the weighting above: if a competent LLM draft and a competent human draft land in the same place commercially, then drafting quality is not where the marginal gain lives. Editing is. Which is why the two criteria weighted 3 are both about what happens after the first draft.
Where they diverge in my use
Asked to cut a section by a third, Claude cuts. ChatGPT tends to rewrite — the output is often good and is often no longer my article. Over a fifteen-turn edit that difference compounds, and it is the single biggest reason my scores split the way they do. The counterweight: ChatGPT's first drafts need less structural surgery, which matters if you are drafting at volume rather than editing one piece to death. My prompt scaffolding for both is in five prompts I actually reuse.
Run the scorecard on your own work
The marks below are mine. Replace them. Everything is stdlib Python 3.
"""Weighted scorecard + token cost for two AI jobs. Python 3, stdlib only."""
# USD per million tokens, read off the vendors' own pricing pages on 2026-09-06.
PRICES = {
"claude-opus-5": (5.00, 25.00),
"claude-sonnet-5": (2.00, 10.00),
"gpt-6-astra": (10.00, 50.00),
"gpt-5.6-terra": (2.00, 12.00),
}
# Anthropic's pricing page notes Claude 4.7 and later use a newer tokenizer
# producing roughly 30% more tokens for the same text.
TOKENIZER_FACTOR = {
"claude-opus-5": 1.30, "claude-sonnet-5": 1.30,
"gpt-6-astra": 1.00, "gpt-5.6-terra": 1.00,
}
WEIGHTS = {
"research": {"source_traceability": 3, "handles_contradictions": 3,
"structured_extraction": 2, "long_run_stamina": 1,
"cost_per_run": 1},
"content": {"holds_a_style_guide": 3, "edits_without_rewriting": 3,
"first_draft_usable": 2, "repurposing_fidelity": 1,
"cost_per_run": 1},
}
def weighted_score(marks, weights):
"""marks: {criterion: 1-5}. Returns the weighted mean, 2dp."""
missing = set(weights) - set(marks)
if missing:
raise KeyError(f"unscored criteria: {sorted(missing)}")
return round(sum(marks[k] * w for k, w in weights.items())
/ sum(weights.values()), 2)
def run_cost(model, in_tokens, out_tokens):
"""USD for one run, adjusted for the tokenizer difference."""
price_in, price_out = PRICES[model]
f = TOKENIZER_FACTOR[model]
return round((in_tokens * f * price_in + out_tokens * f * price_out) / 1e6, 4)
if __name__ == "__main__":
# My marks, from my own use. n = 1, not a benchmark. Overwrite them.
mine = {
"research": {
"claude": {"source_traceability": 3, "handles_contradictions": 4,
"structured_extraction": 4, "long_run_stamina": 4,
"cost_per_run": 3},
"chatgpt": {"source_traceability": 4, "handles_contradictions": 3,
"structured_extraction": 3, "long_run_stamina": 4,
"cost_per_run": 3},
},
"content": {
"claude": {"holds_a_style_guide": 4, "edits_without_rewriting": 4,
"first_draft_usable": 3, "repurposing_fidelity": 4,
"cost_per_run": 3},
"chatgpt": {"holds_a_style_guide": 3, "edits_without_rewriting": 2,
"first_draft_usable": 4, "repurposing_fidelity": 3,
"cost_per_run": 3},
},
}
for job, w in WEIGHTS.items():
for tool, marks in mine[job].items():
print(f"{job:9} {tool:8} {weighted_score(marks, w):.2f} / 5")
print()
for m in PRICES: # 120k tokens of sources in, 4k of report out
print(f"{m:16} ${run_cost(m, 120_000, 4_000):.4f} per research run")
assert weighted_score({k: 5 for k in WEIGHTS["research"]},
WEIGHTS["research"]) == 5.0
assert weighted_score({k: 1 for k in WEIGHTS["content"]},
WEIGHTS["content"]) == 1.0
assert run_cost("gpt-5.6-terra", 1_000_000, 0) == 2.0 # $2/MTok, no penalty
assert run_cost("claude-sonnet-5", 1_000_000, 0) == 2.6 # $2/MTok x 1.3
print("\nchecks passed")
Output on my marks: research, Claude 3.60 against ChatGPT 3.40. Content, Claude 3.70 against ChatGPT 2.90. Flip edits_without_rewriting for ChatGPT from 2 to 4 — entirely defensible if you draft more than you edit — and the content gap closes to 0.20. That sensitivity is the finding. A comparison that swings on one criterion is not a verdict, it is a preference about workflow.
What a research run actually costs
| Model | Input $/MTok | Output $/MTok | One run: 120k source tokens in, 4k out (tokenizer-adjusted) |
|---|---|---|---|
| Claude Opus 5 | $5.00 | $25.00 | $0.91 |
| Claude Sonnet 5 | $2.00 | $10.00 | $0.36 |
| gpt-6-astra | $10.00 | $50.00 | $1.40 |
| gpt-5.6-terra | $2.00 | $12.00 | $0.29 |
Prices from Anthropic's pricing docs and OpenAI's pricing docs, 6 September 2026. The run column includes the tokenizer adjustment, which is the non-obvious bit: Sonnet 5 and gpt-5.6-terra are both $2 per million input tokens, but Anthropic's own docs note that Claude 4.7 and later models use a newer tokenizer producing roughly 30% more tokens for the same text. Per page of source material, they are not the same price. Everything here is under a dollar and a half a run, which is why cost carries weight 1 in both rubrics.
How I split the two jobs in practice
Research in whichever tool has the retrieval reach for the question, then paste the verified sources into a clean context for writing. Mixing the two jobs in one thread is how unsourced claims sneak into a draft: by turn twelve the model cannot tell what it read from what it inferred. The pipeline I run for this site keeps those stages separate on purpose — keyword to published, step by step.
The same instinct drives how I built the agent system here. Agents propose into a pending_actions table and a human approves; nothing writes straight to a live table. Why the approval queue beats write access is the same argument as checking citations, applied to infrastructure.
One thing neither model fixes. On my own Search Console data over 85 days to 3 September 2026, this site drew 22 clicks from 4,553 impressions — a 0.48% CTR across roughly 390 indexed URLs. The posts that rank are build logs and worked arithmetic, sitting at positions 2.8 to 15.5. The posts about generic "[industry] content marketing" sit at 46 to 81. Same author, same domain, same quarter. The difference is not which model drafted them; it is whether the page contains something only I could have written. On structure specifically, what makes a page skimmable and what 50 good B2B blogs have in common are the two things I check a draft against.
FAQ
Is Claude or ChatGPT better for market research?
Task-dependent, and mostly decided by retrieval rather than by the model. In my use ChatGPT reaches wider for sources I did not name and Claude is better at flagging when two sources disagree. Neither is safe to trust unverified: the Tow Center's 2025 study found AI search tools returned wrong citations in more than 60% of 1,600 tests. Open the links yourself.
Is ChatGPT or Claude better for content creation?
Close, and it depends on whether your bottleneck is drafting or editing. ChatGPT gets to a usable first draft faster in my experience; Claude follows a "cut this, do not rewrite it" instruction more literally across a long edit. If you draft at volume, weight the first-draft criterion higher and the answer flips.
Is there a study proving one is better for marketing content?
Not one I could find. The strongest evidence in the area is Dubé and Xu's Wine Access trials (Quantitative Marketing and Economics, 2026), which compared LLM-written, human-written and hybrid marketing emails and found the three commercially hard to tell apart. That is an LLM-versus-human result, not a model-versus-model one.
Which is cheaper for research and content work?
At the API level the mid-tier models are within pennies of each other per run — under $0.40 for a 120k-token research run in September 2026. Watch the tokenizer, not the sticker: Claude 4.7 and later produce about 30% more tokens for the same text, so equal headline prices are not equal costs per page.
Running these tools on real research and real copy, and want the workflow rather than the verdict? I build the pipeline, the prompts and the approval gates around them. See my services or get in touch.
Get the AI Marketing Prompt Pack
30+ tested prompts for images, captions, video scripts, keywords, and full content systems, delivered instantly.
Browse all free guides →Want to implement this with guidance?
Santosh helps founders turn insights like this into real systems.
External Resources