At Formaum, I default to Claude Code for every paid client engineering build. I use Gemini CLI when I want a free, fast read on a large unfamiliar codebase or a quick prototyping pass. Claude Code wins on agentic discipline, MCP tooling depth, and shipping clean code in fewer rounds. Gemini CLI wins on the free tier, raw breadth, and Google Cloud workflows. Most comparison posts are feature tables. This one is which tool ships better client code on a real Tuesday afternoon.


What each tool actually is

Claude Code is Anthropic's terminal-native engineering agent. It sits in your project directory and runs as an autonomous coworker that can read, write, refactor, test, and verify across the whole codebase. It supports the Model Context Protocol, persistent project memory, packaged Skills, hooks, sub-agents, and headless use inside CI, cron, or a Trigger.dev job. Default model is Sonnet 4.6 on Pro, Opus 4.6 on Max.

Gemini CLI is Google's open-source terminal agent for Gemini. It runs in the terminal, supports MCP, has a built-in Plan Mode, native research sub-agents, and a generous free tier on a personal Google account. It is Apache 2.0 licensed, pre-installed in Google Cloud Shell, and integrates natively with the Google Cloud surface. Default model is Gemini 3 Flash on the free tier, with Gemini 3.1 Pro available on paid.

Both have a 1M-token context window. Both speak MCP. Both run autonomously. The differences show up in how they behave when you actually put them to work.


Where Gemini CLI wins

The free tier is real. 1,000 requests per day on a personal Google account, 60 requests per minute, no credit card. For a student, an indie hacker, or anyone exploring before paying for a tool, that is unmatched. Claude Code has no free tier. You sign up and you pay.

Breadth-first reading on huge codebases. Gemini CLI is faster at pulling the whole codebase into context and answering a wide-angle question. Where is the auth logic. Where does this user state thread through. How is this service wired to that one. For pure read-and-explain on a repo I have never seen, Gemini gets to a useful map quickly.

Google Cloud workflows. If you live in GCP, Firebase, BigQuery, Vertex, or Cloud Run, Gemini CLI is native. It is pre-installed in Cloud Shell. It authenticates against your Google account. It speaks your stack. There is no friction.

Multimodal inputs. Gemini natively handles images, PDFs, and audio inside the CLI loop. If your task involves a design mock, a scanned PDF spec, or a screenshot of an error, Gemini ingests it without leaving the terminal. Claude Code handles images well but the multimodal surface is narrower.

Open source. Apache 2.0. You can read the code, fork it, run it air-gapped against a self-hosted Gemini-compatible endpoint. For teams with security constraints, that matters.


Where Claude Code wins

Agentic discipline. Claude Code lands on a working answer in fewer rounds. Independent testing in 2026 put Claude at around 1m 44s on a to-do app build versus Gemini at 2m 36s, and used roughly 261K input tokens versus Gemini's 432K on identical tasks. On real client work the gap is bigger. Claude follows the plan, stops when done, and verifies its own output. Gemini will keep going, re-explaining itself, and burn tokens.

Multi-file refactors and migrations. When I migrated a client off Monday.com, Typeform, AWS, Make.com, and Twilio into one GHL system, I drove it from Claude Code. Holding the source schema, target schema, transform scripts, and verification logic in one head, for hours, without losing the thread. Gemini can hold the context but loses the agentic thread on complex multi-file edits.

MCP tooling depth. Both speak MCP. The Claude Code MCP ecosystem is deeper in practice. I run MCP servers for ClickUp, Airtable, Gmail, Calendar, Slack, Trigger.dev, GoHighLevel, and Chrome DevTools from inside Claude Code. The agent picks the right one for the job. It is the difference between an agent that can think and an agent that can think and act on every system in my stack.

Skills and persistent project memory. Claude Code has packaged Skills, hooks, and project memory that compounds over time. I have Skills for cover letters, ClickUp updates, GHL workflow specs, client onboarding. Each one makes the tool sharper for that specific job. Gemini CLI has extensions and rules files. The compounding effect is not the same.

Headless and scripted use. Claude Code runs inside a Trigger.dev job, a GitHub Action, a launchd cron, a bash script. I have it running scheduled tasks that update client dashboards overnight. Gemini CLI can be scripted, but Claude Code is designed for it.


The free tier question

Gemini CLI's free tier is the most quoted reason to switch. Here is the honest read.

If you are not yet earning revenue from your code, the free tier is genuinely useful. 1,000 requests a day is more than enough to learn, prototype, and ship side projects. Take it.

If you are earning revenue from your code, the math flips. Claude Code Pro is $20 a month. Max is $100 or $200 a month. If those tiers save you one billable hour a month, they pay for themselves many times over. A solo engineer charging $175 an hour for client work does not optimise the tool subscription. They optimise output per hour.

The free tier is a great onramp. It is not a reason to default to Gemini CLI on paid client work.


Real workflow comparison

How I actually use them on a working day.

New client codebase audit. I open Gemini CLI first. Free tier, 1M context, fast read-and-summarise. I get a map of the repo in twenty minutes. Then I switch to Claude Code for any actual edits.

CRM migration build. Claude Code. Hours of agentic work, multiple MCP servers in play, schemas held in context, verification scripts running. Gemini CLI cannot match the discipline of the loop.

Bug fix in a Trigger.dev job. Claude Code. The MCP server can read the job runs directly, pull logs, find the failure, and propose the patch. Gemini CLI would need me to copy-paste logs in.

Reading a PDF spec a client sent. Gemini CLI. Drop the PDF in, ask questions, extract the requirements. Multimodal in the terminal is sharper.

Quick exploration of a new library. Gemini CLI. Free, fast, no quota anxiety. Useful for the kind of throwaway exploration where I do not want to think about cost.

Shipping a feature on deadline. Claude Code. Lower iteration count, cleaner code, fewer corrections. Speed to working output is what gets paid.


The hybrid pattern

The senior move is using both. Gemini CLI as the free, fast scout for unfamiliar territory. Claude Code as the disciplined engineer for paid build work.

I open Gemini CLI when I want a read. New codebase, unfamiliar library, big PDF, broad question. Cost is zero. Context is huge. Speed is good enough.

I open Claude Code when I want a ship. Client engagement, migration, refactor, new feature, anything where the output goes to production. Cost is a rounding error against billable output. Discipline is what gets paid.

Both tools point at the same files on disk. There is no sync problem. Pick the surface that matches the work in front of you.

⚖️

The honest answer: If you only ship paid client code, default to Claude Code. If you are learning, exploring, or prototyping on your own time, default to Gemini CLI. If you do both, run both.


Common mistakes

Defaulting to Gemini CLI because it is free. The free tier is fine for learning. On paid client work, the iteration cost catches up. One extra hour of debugging because the agent kept looping is worth more than a year of Claude Code Max.

Defaulting to Claude Code for everything. Gemini CLI is genuinely the better tool for breadth-first reading and multimodal input. Refusing to use it because you are loyal to one stack costs you speed.

Treating the 1M context number as the whole story. Both tools have 1M context. The behaviour inside that context is what matters. Discipline, tooling, MCP depth, agentic loop quality.

Ignoring the Antigravity announcement. Google announced at I/O 2026 that Gemini CLI is being replaced by Antigravity CLI, with the individual free tier ending June 18, 2026. If you are picking a tool for the long haul, factor that in.

Picking based on a benchmark. SWE-bench scores compare models on contrived tasks. Your work is not contrived. Pick the tool that fits your work pattern.


The bigger picture

Both tools are good. Both have lanes. The AI engineering tooling layer is moving fast and the feature gap will keep shifting. What stays constant is the underlying skill. How to spec a build, structure it cleanly, drive the agent, and verify the output rigorously. That skill is portable across whatever tool wins next quarter.

At Formaum, Claude Code is the workhorse. Gemini CLI is the free scout. Most of my revenue runs through Claude Code because most of my work is client builds where discipline and tooling depth matter more than free tier economics. Your mix should match your work.

Pick the one that fits your next job. Add the other where it is sharper. The tool is the surface. The methodology underneath is the moat.

Run on a stack that's holding you back?

Book a 45-minute discovery call. I'll map what moves, what stays, and what makes sense for your operation.

Book a call

Frequently Asked Questions

Which is better for shipping production client code?
Claude Code, clearly. Lower iteration count, cleaner output, deeper MCP tooling, persistent project memory, headless and scripted use. On paid engineering work where speed to working output is what gets paid, Claude Code is the default. Gemini CLI is sharper for free-tier exploration and breadth-first reading.
Is Gemini CLI's free tier worth switching for?
Depends on the work. If you are learning or prototyping on your own time, the free tier is excellent. 1,000 requests a day on a personal Google account is real. If you bill clients for your code, the math flips. A few hours saved on a real build pays for Claude Code Max many times over.
Do both tools support MCP?
Yes. Both Claude Code and Gemini CLI speak the Model Context Protocol. In practice the Claude Code MCP ecosystem is deeper for production stacks. The day-to-day MCP servers I run for ClickUp, Airtable, Gmail, Calendar, Slack, and GoHighLevel all sit cleanly inside Claude Code.
What is happening with Antigravity CLI?
At Google I/O 2026, Google announced that Gemini CLI will be replaced by Antigravity CLI. The individual free tier on Gemini CLI ends June 18, 2026. If you are picking a tool for the long haul, factor the transition in. Antigravity may carry the strengths forward, but the existing free-tier economics will change.
Can I run Gemini CLI and Claude Code on the same project?
Yes. Both point at the same files on disk. I use Gemini CLI for a fast read on unfamiliar code, then switch to Claude Code for actual edits. No sync issues. Two surfaces over the same project. Match the surface to the work in front of you.
Genevieve Claire
Genevieve Claire
Founder, Formaum — Claude Code Expert & Full-Stack AI Engineer

Builds bespoke AI automation systems for multi-location operations. Previously EA Sports FIFA ($7B franchise) and Film/TV VFX on Skyfall, Avengers, Game of Thrones. Based in Vancouver, BC.