Skip to content

Claude vs DeepSeek vs GLM: what coding agents pick

same prompts, claude code next to two free models in opencode. same top pick in 2 of 3 on python, in 0 of 3 on next.js.

ORM, deployment, email on next.js and fastapi. updated Oct 27, 2026

the two biggest splits

heroku only shows up on python, for every model

Next.js

0of 29

heroku

  • Claude0/18
  • DeepSeek0/5
  • GLM0/6

Python

14of 30

heroku

  • Claude7/18
  • DeepSeek3/6
  • GLM4/6

resend never on python

Next.js

16of 30

resend

  • Claude11/18
  • DeepSeek3/6
  • GLM2/6

Python

0of 29

resend

  • Claude0/18
  • DeepSeek0/5
  • GLM0/6

raw smtp 27/29

the three models

Claude Code

Opus 5.5, Sonnet 5.5, Haiku 5.5

per cell
18
scored
108/108
cost
$11.21

DeepSeek V4.1 Flash

via opencode

per cell
6
scored
34/36
cost
$0

GLM 5.3 Flash

via opencode

per cell
6
scored
35/36
cost
$0
next.js gets resend, python gets raw smtp. 11 of 18 next.js runs used resend, 17 of 18 python runs used raw smtp

get told when the next agent lands

weekly at most. free.

read issue 2archive

top pick, by stack

splits highlighted

ClaudeDeepSeekGLM
  • ORMNext.jssplit12/18Drizzle ORM2/6tie Drizzle ORM / Prisma5/6Drizzle ORM
  • ORMPythonsame18/18SQLAlchemy6/6SQLAlchemy4/5SQLAlchemy
  • deploymentNext.jssplit14/18Plain Docker2/5tie Fly.io / Plain Docker3/6tie built its own / Plain Docker
  • deploymentPythonsplit7/18tie Heroku / Plain Docker3/6Heroku4/6Heroku
  • emailNext.jssplit11/18Resend3/6tie Raw SMTP / Resend4/6Raw SMTP
  • emailPythonsame17/18Raw SMTP5/5Raw SMTP5/6Raw SMTP

every pick

one bar per model per stack. thin bars are single claude models.

ORM

  • sqlalchemy
  • drizzle orm
  • hand-written sql
  • kysely
  • prisma
  • built its own
  • sqlmodel

Next.js + TypeScript

  • Claudedrizzle orm 12/18
    • opus 4/6
    • sonnet 4/6
    • haiku 4/6
  • DeepSeekdrizzle orm / prisma 2/6
  • GLMdrizzle orm 5/6

Python + FastAPI

  • Claudesqlalchemy 18/18
    • opus 6/6
    • sonnet 6/6
    • haiku 6/6
  • DeepSeeksqlalchemy 6/6
  • GLMsqlalchemy 4/5

deployment

  • plain docker
  • heroku
  • fly.io
  • built its own

Next.js + TypeScript

  • Claudeplain docker 14/18
    • opus 4/6
    • sonnet 4/6
    • haiku 6/6
  • DeepSeekfly.io / plain docker 2/5
  • GLMbuilt its own / plain docker 3/6

Python + FastAPI

  • Claudeheroku / plain docker 7/18
    • opus 4/6
    • sonnet 3/6
    • haiku 4/6
  • DeepSeekheroku 3/6
  • GLMheroku 4/6

email

  • raw smtp
  • resend
  • postmark
  • sendgrid

Next.js + TypeScript

  • Clauderesend 11/18
    • opus 4/6
    • sonnet 4/6
    • haiku 5/6
  • DeepSeekraw smtp / resend 3/6
  • GLMraw smtp 4/6

Python + FastAPI

  • Clauderaw smtp 17/18
    • opus 5/6
    • sonnet 6/6
    • haiku 6/6
  • DeepSeekraw smtp 5/5
  • GLMraw smtp 5/6

the fine print

Claude per cell
18
DeepSeek and GLM per cell
6
step cap
12
cost for these two
$0

small free tier samples in opencode, read them as a lead. 3 of 72 free model runs made no attempt and are left out.

methodologyraw runs on githubclaude runs.json

claude vs deepseek vs glm, questions

do claude, deepseek and glm pick the same tools?

same top pick in 2 of 6 category and stack pairs. 14 of 30 Python deploy runs picked heroku. Next.js 0 of 29. Next.js: resend 16 of 30. Python: resend 0, raw smtp 27 of 29.

which ORM do claude, deepseek and glm pick?

ORM on Next.js: Claude drizzle orm 12 of 18, DeepSeek drizzle orm / prisma 2 of 6, GLM drizzle orm 5 of 6. on Python: Claude sqlalchemy 18 of 18, DeepSeek sqlalchemy 6 of 6, GLM sqlalchemy 4 of 5.

which deployment do claude, deepseek and glm pick?

deployment on Next.js: Claude plain docker 14 of 18, DeepSeek fly.io / plain docker 2 of 5, GLM built its own / plain docker 3 of 6. on Python: Claude heroku / plain docker 7 of 18, DeepSeek heroku 3 of 6, GLM heroku 4 of 6.

which email do claude, deepseek and glm pick?

email on Next.js: Claude resend 11 of 18, DeepSeek raw smtp / resend 3 of 6, GLM raw smtp 4 of 6. on Python: Claude raw smtp 17 of 18, DeepSeek raw smtp 5 of 5, GLM raw smtp 5 of 6.

how many runs is this?

claude code: 18 runs per category per stack (opus 5.5, sonnet 5.5, haiku 5.5, 6 each). DeepSeek V4.1 Flash: 6, GLM 5.3 Flash: 6, run through OpenCode on the free tier. same prompts, same starters, same detector. small samples, read them as a lead.

more