Codex vs Claude Code: which jobs I give each (3 months of work logs)

Codex vs Claude Code: why I give them different jobs (3 months of my AI work log)

I use Codex and Claude Code for different jobs. Between July 17 and October 16, 2026, my AI work log got 442 lines. Claude Code's models appear on 314 of them, mostly building and writing. Codex appears on 90, and 80 of those were in the reviewer role. Scripts with no AI took 18 lines, and 20 lines have no model name (10 of them are no-model steps marked "none").

By default, a model from the other company reviews the work.

If you only want the setup, jump to "My routing table." The rest is the reasoning and what the log says.

Why a second company

I'm not a developer. I describe what I want, and the AI writes the code, runs the commands and writes the documents. That means I can't always tell when a result is wrong. A broken screen is easy to spot. A wrong number in a correct-looking table is not.

My reasoning for the second company is shared blind spots. I assume two models from the same company are more likely to miss the same thing. A reviewer from another company gets only the result and my original request, not the conversation that produced it.

I tightened the rule on October 1. In one comparison test, the grader turned out to be from the same company as one of the entries it was grading. Since then the rule says it outright: the grader comes from the other company.

What the 442 lines say

I log each task as one line: date, job type, role, model, effort level and result. Some lines bundle several jobs, and some miss a field, so treat these as counts of log lines. Here is the split by role:

RoleClaude Code modelsCodex modelsScripts
Plan and judge58100
Build and write19900
Research4500
Reviewer role9800
No model needed0018

(Plus 3 Claude lines with no role recorded and the 20 lines with no model name.)

In practice, Claude Code is my builder and Codex sits in the reviewer role. In my setup that role also makes images by default. Sorting by job names, about 14 image lines went to Codex and 3 to Claude.

The log marks two kinds of retry: "same model, more effort" and "switch to a stronger model." Claude lines got one of those marks 14 times out of 314, Codex lines 2 times out of 90. I don't read that as a ranking. The two did different jobs, so these counts reflect the jobs I gave each tool.

My routing table

These are the four questions I go through before I hand anything to an AI.

  1. Can a script do it? Then no model call. Publishing a draft, counting rows, making a thumbnail from text: a script does it without asking a model anything. (This post's thumbnail came from a script.)
  2. What's the cheapest model that can do it well? I don't send simple chores to the most expensive model. My shorthand for this is "don't use a cow-butchering knife to catch a mouse."
  3. Who checks it? Claude reviews Codex's work, and Codex reviews Claude's. If no model from the other company is available, a fresh session of the same model checks it, and I mark that as a weaker check.
  4. What happens on failure? After the first failure, I raise the same model's effort setting. After a second failure, I switch to a stronger model.
JobWho does it
Planning and judgment callsClaude's top model
Building, writing, editingClaude's next model down
Research summariesClaude's smaller model
Reviewing finished workCodex, top model, high effort
ImagesCodex
Repeatable mechanical stepsA script

When one of them runs out

Both tools have usage limits, and I hit them. The log has 9 "out of limit" results on Claude lines and 9 on Codex lines.

So I wrote down what happens when each one runs out. If Claude's planning model is out, Codex makes the planning call and Claude carries it out. If Codex's top model is out but Codex still has quota, another Codex model reviews. If the required judgment or review is unavailable, high-stakes decisions, irreversible actions, money tasks and public releases wait in a queue. (How I decide which steps need a human at all is in my post on what not to automate.)

I used that fallback for this post. When it was time to pick the next two topics, Claude's planning model had hit its usage limit. Codex picked them, including this one. Claude wrote it, and Codex reviewed the draft.

If you're starting with one tool

You don't need both on day one. If you only have one, you can still borrow part of the idea:

  • Open a fresh session to review, and give it only the result and your original request, not the conversation that made it. It's a weaker check than a second company, but it's better than asking the same chat.
  • Ask it to list the problems it finds.
  • Keep a one-line log per task. I go through mine weekly, and that's where I see which kinds of jobs keep needing retries.

FAQ

Is Codex or Claude Code better for non-coding work?
I can't answer that from my log, because I gave them different jobs. For me, Claude Code builds and writes, and Codex reviews and makes images.

Why use a different company's model to review?
I assume models from the same company are more likely to share blind spots. A model from another company, given only the result and the request, is my way of lowering that risk.

What do you do when you hit a usage limit?
I have a written fallback for each role. The other tool takes over judgment, another model from the same tool can review, and if the needed review isn't available, anything irreversible, money-related or public waits.

What should I log?
One line per task: date, job type, model, effort and result. Mine isn't perfect (some lines bundle jobs or miss a field), and it's still enough to see the split.

Comments

Popular posts from this blog

Python script works manually but not in Task Scheduler: the Microsoft Store python stub (and a daily alive check)

Schedule a weekly AI summary with Windows Task Scheduler (with a human OK step)

What not to automate with AI: my approval rule for money and irreversible actions

Telegram bot receives /start automatically: how it triggered my kill switch (one-line fix)