What we found
- Complaints about Claude Code's output quality rose sharply in June 2026, to 22% of issues, and stayed high.
- Interface problems — bugs in the product's own terminal interface, editor extension or desktop app, not every issue filed from a terminal — are the biggest category for both, at about a quarter of issues.
- Claude Code issues mostly come from the terminal; Codex issues from the desktop app, and 30% of Codex reports name Windows as the operating system (18% for Claude Code).
- A majority of the 100 most-upvoted issues in each are feature requests: 60% and 58%; most of the rest are bugs.
The chart below shows all 17 categories, as a share of every issue each product received.
Claude Code peaked in April; Codex is still climbing
The Claude Code GitHub page received 13,074 issues in April 2026, its peak, and 7,360 in September.
Codex rose from 2,354 in April to 6,071 in September and 6,583 in the first 28 days of October.
In all, the year holds 92,277 Claude Code issues and 35,315 Codex issues.
October 2025 covers only the last 4 days of the month, and October 2026 the first 28. Even so, Codex received more issues in 28 days of October than in all of September. The chart shows the two paths: Claude Code falls back after April, while Codex keeps rising.
Claude Code issues peaked in April 2026. Codex issues kept climbing through October.
Issues filed per month. October 2025 covers only the last 4 days of the month and October 2026 the first 28, so those points are open and the last segment is dashed.
- Claude Code
- Codex
Complaints about Claude Code's output rose sharply in June
It rose from about 5% in February to 9.7% in May, then more than doubled to 21.5% of all June issues, or 16.8% after removing issues marked as duplicates; it peaked at 22.4% in July, then settled at 17–19%.
After removing issues marked as duplicates, it rose by about two-thirds in June and doubled by July: 9.8% in May, 16.8% in June and 20.0% in July.
The 1,000 randomly chosen issues sorted twice show the same jump: about 6% before June, about 20% from June.
Codex also rose, from 3.5% in June to 7.0% in September, but from a much lower base and without a jump like June's.
It was higher in late 2025 — 17% in November and 13% in December — when it received only a few hundred issues a month.
Anthropic published a postmortem on 23 April 2026, "An update on recent Claude Code quality reports", describing three problems between 4 March and 20 April: a lower default reasoning effort, a caching bug that dropped earlier reasoning, and a system-prompt change that hurt coding. It says all three were fixed by 20 April. In our data, the share rises only slightly in March and April; the large jump comes in June, after those fixes, and we found no Anthropic statement covering it.
The data does not say why the June jump happened, and this page does not speculate. The chart shows the monthly path for both products.
From June 2026, complaints about Claude Code's output quality more than doubled as a share of its issues. Codex shows no comparable rise.
Share of each month's issues whose main problem is the model's behavior or output quality. The table below also shows the figures with duplicate reports removed.
- Claude Code
- Codex
Claude Code issues come from the terminal; Codex issues from the desktop app
56% of Claude Code issues were filed by someone using the terminal, against 28% of Codex issues. These are issues, not users.
54% of Codex issues were filed by someone using the desktop app, against 15% of Claude Code issues.
The Windows gap is also clear: 18% of Claude Code issues against 30% of Codex issues.
Anthropic's IPO filing (SEC Form S-1, filed 26 October 2026) lists Claude Code as available "as a terminal tool, desktop app, web interface, and mobile app" (p. 201); most of its issues still come from the terminal.
The chart shows where they used it.
Claude Code is reported from the terminal. Codex is reported from its desktop app, and more often on Windows.
Share of all issues by where the reporter was using the product, and by the operating system they named. About 43% of Claude Code issues and 40% of Codex issues name no operating system, and 2–3% name several, so the operating-system bars don't add up to 100%.
- Claude Code
- Codex
Where the reporter was using it
Operating system named in the report
Four differences hold; most categories look the same
The check is a sample of 1,000, so its numbers carry sampling noise, and the full sort carries its own sorting errors; we count a difference only when both agree.
Four differences pass a two-part test. A difference counts only when the 1,000 random issues show it clearly too (their 95% range excludes zero, in the same direction) and the full sort shows at least a 1-point gap.
Output quality is 13% of Claude Code issues against 6% of Codex.
Skills and subagents are 5% against 3%.
Hooks are 5% against 3%.
Performance is 3% against 6%, the one confirmed difference that runs the other way.
Usage limits fail on the second part: the second sort sees a gap, but the full sort's is only 0.9 points. The interface fails on the first: the full sort shows 5 points, but the 1,000-issue range includes zero.
Sessions, permissions, MCP and installation are within about three points.
The chart shows the four differences and the categories that overlap.
Four differences hold up: three are more common in Claude Code, one in Codex.
Claude Code's share minus Codex's share, in percentage points, from all issues. A difference counts (solid bar) only when the 1,000 randomly chosen issues sorted twice show it clearly too, in the same direction, and the gap here is at least 1 point. The interface gap is large here but unclear in that check, and the usage-limits gap shows in that check but is under 1 point here, so neither counts.
- Confirmed by the double-check
- Not confirmed
Two waves of limit messages, one in each product
"Hit your session limit" appears in 155 Claude Code titles, about 1.7 per 1,000 issues: none before May, a peak in July, and almost none by October. "Selected model is at capacity" appears in 272 Codex titles, about 7.7 per 1,000 issues, almost all in September and October.
These are title counts, not category counts. A phrase can be copied from a banner, so the count shows how many people used the words, not how many separate failures occurred.
The same filing says the company has "changed, and may in the future change, usage limits, rate limits, or model and product capabilities" (p. 29). The filing is Anthropic's, so it says nothing about Codex. It gives no dates or counts, so it neither confirms nor explains this wave. The chart shows the two shapes.
Two limit messages arrive as waves, months apart.
Issue titles that contain each message, per month. Each panel has its own scale. Open points are partial months.
Claude Code: hit your session limit
Codex: selected model is at capacity
Most of the top-upvoted issues are feature requests
Upvotes here are 👍 reactions, counted on 28 October 2026; the 100th most-upvoted issue had 102 for Claude Code and 56 for Codex.
Feature requests are the most common report type in the top 100: 60% and 58% of the issues; most of the rest are bugs.
Against all issues, feature requests are 23% for Claude Code and 18% for Codex.
Usage limits are 12% of Claude Code's top 100, against 5.2% of all its issues. Other is 11% against 3.4%. Auth is 7% against 2.3%.
Memory is 3% of the top 100, against 2.3% of all issues. Compaction is 2% against 2.5%.
A 👍 can mean "me too" on a bug or "I want this" on a request; the count alone can't tell them apart. The chart shows what rises to the top.
What people file is mostly bugs. What they upvote most is mostly feature requests.
Top: the report type among all issues and among the 100 most-upvoted issues. Bottom: each category's share of all issues (hollow dot) and of the 100 most upvoted (solid dot).
- All issues
- 100 most upvoted
Report type · orange or violet: feature requests · dark gray: bugs · light gray: questions and other
Claude Code
Feature requests: 22.9% of all issues, 60.0% of the 100 most upvoted.
Codex
Feature requests: 17.5% of all issues, 58.0% of the 100 most upvoted.
Category · hollow dot: all issues · solid dot: the 100 most upvoted
Claude Code
Codex
Lost work is rare, and the difference is not established
In the 500 random Claude Code issues, 11 (2.2%) say the agent destroyed or lost work. In the 500 random Codex issues, 4 (0.8%) say the same. That is roughly 1,100 to 3,600 Claude Code issues in the year, best guess about 2,000.
For Codex it is roughly 100 to 700. The count includes lost conversation history as well as deleted or overwritten files. These estimates use only the 1,000 random issues. The chart shows the two shares.
Reports that the agent deleted or lost someone's work are rare in both.
Share of issues where the reporter says the agent deleted files, ran a destructive git command, overwrote changes or lost conversation history. Counted only in the 1,000 issues sorted twice, because it needs careful reading.
Claude Code
2.2%
11 of 500 randomly chosen issues · 95% range 1.2% to 3.9%
Roughly 1,100 to 3,600 issues in the year, best guess about 2,000
Codex
0.8%
4 of 500 randomly chosen issues · 95% range 0.3% to 2.0%
Roughly 100 to 700 issues in the year, best guess about 300
The gap between the two is +1.4 points, but its 95% range (−0.2 to +3.2) includes zero, so the data can't say one is higher.
What this data cannot tell you
Open rates reflect each project's closing habits. 16% of Claude Code issues are open, against 71% of Codex issues.
36,028 Claude Code issues (39%) carry a "stale" label, and about half of all its issues are closed as "not planned".
Codex has no stale label and closed 1,823 (5%) as not planned.
The two projects mark duplicates differently — 29% against 7% — so duplicate rates aren't comparable.
Neither project says how many people use it, so we can't tell whether Codex's rise means more users or more issues per user. Anthropic's IPO filing gives company-wide customer figures but no Claude Code user or usage numbers, so the question stays open.
How we did it
- We collected every issue filed on Claude Code's and Codex's GitHub pages in the year to 28 October 2026.
- We wrote a rulebook of 17 categories and froze it before sorting.
- A language model, Grok 4.5, sorted every issue.
- We checked it: 1,200 issues were sorted again by two other language-model agents, and the two sorts agreed on 1,047 of them (87%).
- We published everything you need to repeat it: every issue's category, the rulebook and the model's exact instructions.
On 1,200 issues sorted twice, the two sorts agreed on the category for 1,047 of them: 87%.
The grids show percentages, not issue counts: each square is 1% of the 1,200 issues, and dark squares are agreement. The second sort was done one issue at a time by two other language-model agents, with a third pass where they disagreed. This is agreement between two model sorts, not proof that either is right.
Language models did all the sorting; no person sorted issues.
Technical details
Ranges are 95% confidence intervals; kappa measures agreement beyond chance, and 0.86 is strong.
Window: 2025-10-28T06:41:40Z to 2026-10-28T06:41:40Z. The 1,000 random issues were drawn 500 per product without replacement, seed 20261028-B; the top 100 by fresh upvotes per product were added, for 1,200.
The rulebook has 17 categories, built from the projects' own labels and common phrases, and frozen before the sort began. Version 1.0, frozen 2026-10-28, SHA-256 b451f07358e36df89b3386a80b15c053f7a5d3a760b52d78c3e8f7648380ffde.
The full sort used Grok 4.5, 20 issues per request, 6,380 batches and 8,618 calls; the prompt is SHA-256 c38364864217143acbff3ec0e2a43d4256ad5e2af8f26b948b5a2c85df7a9544. Calls that came back malformed or failed were retried, which is why there are more calls than batches.
We chose Grok 4.5 after testing three setups on 200 issues; it agreed with the second sort 88% of the time and could run all 127,592 issues.
It read each issue's title, labels and text, with template boilerplate removed, code and logs replaced by placeholders, and cut at 2,500 characters.
Each of the 1,200 issues was sorted a second time by two other language-model agents working one issue at a time; where those two disagreed, a third pass settled it. Agreement on the 1,200: category 87.25% (kappa 0.8586), report type 96.50% (kappa 0.9162), where they used it 88.75% (kappa 0.8348). This is agreement between model sorts, not proof that either is right.
Checks use Wilson 95% intervals and Newcombe 95% intervals; upvote ranges use 10,000 bootstrap resamples, seed 20261028-plus1. Fresh upvotes were fetched for all 127,592 issues, 179,503 in total.
Data loss comes from the 500 random issues per product. No usernames or comment text are published; 1,377 titles were redacted.
Download everything and check our work
All 127,592 issues with their categories, the 1,200 double-checked issues, the monthly counts, the rulebook and the model instructions are in the downloads. Check our work against them.
Research by Noteheld (noteheld.com). Noteheld makes a paid shared notebook that coding agents such as Claude Code and Codex can read and write, so we have an interest in how people use these tools. That's why the data and the method are all here for you to check. We're not affiliated with Anthropic or OpenAI. Questions or corrections: [email protected].
- Every issue, with its categoryAll 127,592 issues with every issue's title, except 1,377 titles that were redacted because they contained request IDs, email addresses or other personal or secret-looking strings. Also includes link, date, state, labels, 👍 reactions, counted on 28 October 2026, and category.
5c0231af091ba6a87ccdcdb63699bc023300651a565222ae300e204eec44428d - The 1,200 issues sorted twiceThe 1,000 random issues plus the 200 most upvoted, with the careful category and the language-model category side by side.
5eca9076dfe4f8d26a88fc286d05174de065b296bbef55339d0ac402e5781e16 - Issues per month, by categoryAll 127,592 issues counted by month and category.
7e7297717921dbc10d6d9bc703dd48577debc0ba60c2c7a2d15bc4f622e1eba8 - The category rulebookThe 17 categories and their rules, frozen before sorting.
b451f07358e36df89b3386a80b15c053f7a5d3a760b52d78c3e8f7648380ffde - The instructions given to the modelThe prompt given to the language model for every batch.
c38364864217143acbff3ec0e2a43d4256ad5e2af8f26b948b5a2c85df7a9544 - Chart 1 data: share of issues by categoryAll 127,592 issues: each category's share per product.
dc339f6d28477508a545ed4bdf912ddc704f97360978cf031edf44ae3818a834 - Chart 2 data: issues per monthAll 127,592 issues, counted by calendar month for each product.
a45e601d2819cd5b3385d83a352a0ee5d64a2599693ed3412612ddf912e52335 - Chart 3 data: model behavior over timeAll 127,592 issues: the share each month about model behavior and output quality.
dde05309971e2ed4b9c9808101c05bc9f73c09cdf7572484f1b337874bb0b797 - Chart 4 data: where they used it, and operating systemAll 127,592 issues: where people were using each product, and the operating system they named.
58c2789d23506d7050b846722b6e20a7aa0df5236011cad52e3cdacdee3db7ca - Chart 5 data: category differencesAll 127,592 issues, with the confirmed flag and the separate check figures.
01b7f48340569baee1cf994751b41903a434d1c0adc67aa254e71ff6fb963971 - Chart 6 data: title wavesAll 127,592 issue titles, counted by month for each limit message.
192a08052aba1b371ce32cb04a67556789d8991564dd0181600638d134554ddb - Chart 7 data: filed versus upvoted, by categoryAll 127,592 issues and the 100 most upvoted per product: category shares.
3c664f000464c105e2a5acbb3e2bf8c69233475cf98a0b480c7cd57a65cc1a40 - Chart 7 data: report types, all issues against the 100 most upvotedAll 127,592 issues and the 100 most upvoted per product: report type shares.
25f8709447b94f4ed9a14bd6c9f7577150f334355e5716a16081d2c46e37dc29 - Chart 8 data: data loss1,000 randomly chosen issues, 500 per product, sorted twice: explicit data-loss claims with 95% ranges.
0cf1464cca89437c935ee88e44f7e3715071ffc56b61d75830427b42e8676f83 - Chart 9 data: agreement1,200 issues sorted twice, 1,000 random plus 200 most upvoted: agreement counts.
7d7e6999a694eeb5de17cd219ca3fc075b0a13c0396538c6d57b12d7ee42bb98 - Everything on this pageThe page data as JSON: every number, chart series and download manifest.
bea4250564cb9c130e8eecead62fb348be094c5c7214d4f09f7ddc0d73ef0c8a - The raw collected exportThe raw collected export: every issue's metadata as fetched from GitHub, without categories. It also has closed_at, state_reason, comment_count, reactions_plus1 (the stored reaction count), and two internal working columns: themes (keyword themes assigned by the collector) and is_duplicate (whether the issue was marked as a duplicate).
831fbf614818dfed5ef2c6a679930d2e36acdc9b21673c3b5a203fe4dd38dfcd
To check a file, compare its fingerprint with the one listed: run sha256sum <file> (on macOS, shasum -a 256 <file>). For the gzip files, the fingerprint is of the compressed file. In the CSV files, a cell that starts with =, +, -, @, a tab or a carriage return has an apostrophe added in front, so spreadsheets show it as text instead of running it. Remove that apostrophe if you need the exact original title.