Stubbi
Compare
Head-to-head · Updated Nov 3, 2026

DeepSeek vs Claude

The highest-scoring DeepSeek and Claude models, DeepSeek V4.1 Flash 1017 and Claude Opus 5.5, on independent tests for professional work, cost and speed.

Short answer

Claude Opus 5.5 leads on 12 of 12 quality scores, including the overall Intelligence Index.

  • FinanceClaude Opus 5.559.4 vs 42.2
  • Legal workClaude Opus 5.558.0 vs 37.7
  • HealthcareClaude Opus 5.557.9 vs 41.3
  • EngineeringClaude Opus 5.564.6 vs 37.5
  • Strategy & operationsClaude Opus 5.561.4 vs 49.2
  • Coding agentsClaude Opus 5.559.6% vs 33.8%
  • Expert knowledgeClaude Opus 5.561.4% vs 43.3%
  • Fewer made-up answersClaude Opus 5.550.3% vs 64.1%
  • Lower costDeepSeek V4.1 Flash 1017$521 vs $8,910
  • SpeedDeepSeek V4.1 Flash 1017174 tok/s vs 96 tok/s

Same task, side by side

6 original professional tasks, run Nov 3, 2026. One response per model with default settings and no system prompt, through OpenRouter. Cost includes reasoning tokens and excludes OpenRouter’s 5.5% funding fee.

Legal

Spot the risks in a software contract

Task
You are advising the customer, a 40-person design agency, before it signs this software subscription agreement. List the three biggest risks to the customer in order of importance. For each, explain the risk in one or two sentences and propose replacement wording. Keep the whole answer under 250 words.

Clause:
"In no event shall Provider's aggregate liability arising out of or related to this Agreement exceed the fees paid by Customer in the one (1) month preceding the claim. Provider may modify the Services or these terms at any time by posting notice on its website, and Customer's continued use constitutes acceptance. Customer shall indemnify Provider against all claims arising from Customer Data, including claims caused by Provider's negligence. This Agreement renews automatically for successive twelve (12) month terms unless Customer gives written notice of non-renewal at least ninety (90) days before the end of the then-current term."
DeepSeek V4.1 Flash 101752s · $0.0004
  1. Liability cap (highest): A one-month fee cap is likely far below losses from service failure, data breach, or IP claims. Replace: “Provider’s aggregate liability shall not exceed the greater of fees paid in the 12 months preceding the claim or $[X], and the cap shall not apply to Provider’s gross negligence, willful misconduct, data breach, or IP infringement.”
  1. Broad customer indemnity: Customer must indemnify Provider even for claims caused by Provider’s negligence, shifting Provider’s own fault to Customer. Replace: “Customer shall indemnify Provider only for third-party claims arising from Customer Data to the extent caused by Customer’s breach or negligence, excluding claims caused by Provider’s negligence, willful misconduct, or breach.”
  1. Unilateral modification: Provider can change the Services or terms anytime by website notice, with continued use as acceptance, so Customer can be bound to unknown material changes. Replace: “Provider may modify the Services or terms only with 30 days’ prior written notice; material adverse changes require Customer’s written consent, and Customer may terminate without penalty before they take effect.”
Claude Opus 5.59s · $0.017

Top Three Risks to the Customer

1. Indemnity covers Provider's own negligence

The agency must pay Provider's losses for Customer Data claims even when Provider caused them, such as a breach of client files through Provider's poor security. This exposure is uncapped and reverses who bears the fault.

Replacement: "Customer shall indemnify Provider against third-party claims alleging that Customer Data, as provided by Customer, infringes third-party rights, except to the extent caused by Provider's negligence, willful misconduct, or breach of this Agreement."

2. Liability cap of one month's fees

If Provider loses or leaks client work, the agency's recovery is limited to roughly one month's subscription. That is almost no remedy.

Replacement: "Provider's aggregate liability shall not exceed the greater of fees paid in the twelve (12) months preceding the claim or $[X]. This cap shall not apply to Provider's breach of data security or confidentiality obligations, indemnification obligations, gross negligence, or willful misconduct."

3. Unilateral changes by website posting

Provider can change the services or any term, including risks 1 and 2, without direct notice. Continued use then counts as acceptance.

Replacement: "Provider may not materially reduce the Services during a term. Changes to these terms require thirty (30) days' written notice to Customer by email. If a change is adverse, Customer may terminate without penalty and receive a pro-rata refund of prepaid fees."

Also negotiate: Shorten the 90-day non-renewal notice to 30 days, and require Provider to send a renewal reminder.

What a strong answer includes. The clause contains four customer risks: a one-month liability cap, unilateral changes by website notice, an indemnity that covers the provider’s own negligence, and a 90-day auto-renewal notice window. Strong answers prioritize the liability cap and the negligence indemnity and give usable replacement wording.

Finance

Calculate margins and brief a board

Task
Harbor Lane Coffee Co. (a fictional company) reported these figures. Calculate year-over-year revenue growth, gross margin and operating margin for both quarters, operating margin for Q3 2026 excluding the one-time charge, and revenue per store for both quarters. Then write four bullet points summarizing the quarter for the board. Show your figures to one decimal place.

Q3 2026: revenue $4.82M; cost of goods sold $1.98M; operating expenses $2.31M, which include a one-time lease termination charge of $0.21M; 38 stores at quarter end.
Q3 2025: revenue $4.10M; cost of goods sold $1.56M; operating expenses $2.02M; 33 stores at quarter end.
DeepSeek V4.1 Flash 101716s · $0.0009

Calculated metrics

MetricQ3 2026Q3 2025Change
Revenue$4.82M$4.10M+17.6% YoY
Gross profit$2.84M$2.54M+11.8%
Gross margin58.9%62.0%-3.0 pp
Operating income, reported$0.53M$0.52M+1.9%
Operating margin, reported11.0%12.7%-1.7 pp
Q3 2026 operating income excl. one-time charge$0.74Mn/an/a
Q3 2026 operating margin excl. one-time charge15.4%n/a+2.7 pp vs. Q3 2025 reported
Revenue per store, quarter-end$126.8K$124.2K+2.1%
Stores at quarter end3833+5 stores

Notes: Q3 2026 adjusted operating income excludes the $0.21M one-time lease termination charge: $4.82M − $1.98M − ($2.31M − $0.21M) = $0.74M. Revenue per store = quarterly revenue ÷ quarter-end stores.

Board summary bullets

  • Revenue grew 17.6% YoY to $4.82M, with store count up to 38 from 33; revenue per quarter-end store rose 2.1% to $126.8K.
  • Gross margin compressed 3.0 pp to 58.9% from 62.0%, as COGS grew 26.9% versus revenue growth of 17.6%.
  • Reported operating margin was 11.0%, down 1.7 pp from 12.7%; the $0.21M lease termination charge reduced Q3 2026 operating margin by about 4.4 pp.
  • Excluding the one-time charge, Q3 2026 operating margin was 15.4% on $0.74M adjusted operating income, up 2.7 pp versus Q3 2025 reported operating margin, indicating stronger underlying profitability despite gross-margin pressure.
Claude Opus 5.512s · $0.030

Harbor Lane Coffee Co.: Q3 2026 vs. Q3 2025

Calculations

MetricQ3 2026Q3 2025Change
Revenue$4.82M$4.10M+17.6% YoY
Gross profit$2.84M$2.54M+$0.30M
Gross margin58.9%62.0%−3.1 pts
Operating income (reported)$0.53M$0.52M+$0.01M
Operating margin (reported)11.0%12.7%−1.7 pts
Operating income (excl. $0.21M charge)$0.74Mn/an/a
Operating margin (excl. charge)15.4%12.7%+2.7 pts
Revenue per store$126.8K$124.2K+2.1%

Workings

  • Revenue growth: ($4.82M − $4.10M) ÷ $4.10M = 17.6%
  • Gross margin: ($4.82M − $1.98M) ÷ $4.82M = 58.9%; ($4.10M − $1.56M) ÷ $4.10M = 62.0%
  • Operating margin: ($2.84M − $2.31M) ÷ $4.82M = 11.0%; ($2.54M − $2.02M) ÷ $4.10M = 12.7%
  • Adjusted operating margin: ($0.53M + $0.21M) ÷ $4.82M = 15.4%
  • Revenue per store: $4.82M ÷ 38 = $126.8K; $4.10M ÷ 33 = $124.2K

Note: Revenue per store uses quarter-end store counts. If stores opened during the quarter, an average store count would give a more accurate (likely higher) per-store figure for Q3 2026.

Board Summary

  • Strong top-line growth: Revenue rose 17.6% year over year to $4.82M. Most of the growth came from expansion to 38 stores from 33, and revenue per store also edged up 2.1% to $126.8K.
  • Gross margin compression needs attention: Gross margin fell 3.1 points to 58.9% because cost of goods sold grew 26.9%, well ahead of revenue. Management should identify whether input costs, product mix, or new-store inefficiencies are the cause.
  • Underlying profitability improved despite the reported dip: Reported operating margin declined to 11.0% from 12.7%, driven by a one-time $0.21M lease termination charge. Excluding the charge, operating margin rose to 15.4%, and operating expenses grew only 4.0%, showing good overhead leverage.
  • Outlook: Operating income was roughly flat on a reported basis ($0.53M vs. $0.52M) but up about 42% excluding the charge. The key priority is restoring gross margin so that store expansion translates fully into profit growth.

What a strong answer includes. Correct figures: revenue growth 17.6%; gross margin 58.9% (Q3 2026) vs 62.0% (Q3 2025); operating margin 11.0% vs 12.7%; Q3 2026 operating margin excluding the charge 15.4%; revenue per store about $126.8K vs $124.2K.

Healthcare

Rewrite discharge instructions in plain language

Task
Rewrite these hospital discharge instructions for a patient who reads at about a sixth-grade level. Keep every medicine, dose, timing and warning sign. Use short sentences and headings. Stay under 200 words. Do not add medical advice that is not in the original.

"Patient may resume a regular diet as tolerated. Take amoxicillin-clavulanate 875 mg PO BID x 7 days with food; complete the full course. Acetaminophen 650 mg PO q6h PRN pain; do not exceed 3,000 mg/24h. Avoid NSAIDs for 7 days. Keep incision clean and dry; may shower after 48 hours, no tub baths for 2 weeks. Return to the ED or call the surgical clinic for T > 101°F (38.3°C), increasing erythema or purulent drainage at the incision site, persistent vomiting, or abdominal pain uncontrolled by medication. Follow-up with Dr. Patel in surgical clinic in 10–14 days."
DeepSeek V4.1 Flash 10179s · $0.0004

Discharge Instructions

Diet

You may eat a normal diet as you can tolerate it.

Medicines

Take amoxicillin-clavulanate 875 mg by mouth twice a day for 7 days with food. Finish all of it.

Take acetaminophen 650 mg by mouth every 6 hours as needed for pain. Do not take more than 3,000 mg in 24 hours.

Avoid NSAIDs for 7 days.

Wound Care

Keep your incision clean and dry. You may shower after 48 hours. Do not take tub baths for 2 weeks.

When to Get Help

Go to the ED or call the surgical clinic if you have:

  • Temperature over 101°F (38.3°C)
  • More redness or pus at your incision
  • Vomiting that does not stop
  • Belly pain that medicine does not control

Follow-Up

See Dr. Patel in the surgical clinic in 10–14 days.

Claude Opus 5.516s · $0.039

Going Home After Surgery

Eating

You can go back to your normal foods. Eat what your stomach can handle.

Your Medicines

1. Amoxicillin-clavulanate (antibiotic)

  • Take 875 mg by mouth.
  • Take it 2 times a day for 7 days.
  • Take it with food.
  • Take every pill, even if you feel better.

2. Acetaminophen (Tylenol) for pain

  • Take 650 mg by mouth every 6 hours if you need it for pain.
  • Do not take more than 3,000 mg in 24 hours.

3. No NSAIDs for 7 days

  • NSAIDs are pain medicines like ibuprofen (Advil, Motrin) and naproxen (Aleve).

Caring for Your Cut (Incision)

  • Keep it clean and dry.
  • You may shower after 48 hours (2 days).
  • Do not take a bath in a tub for 2 weeks.

When to Get Help

Go to the emergency room or call the surgery clinic if you have:

  • A fever over 101°F (38.3°C)
  • Redness around your cut that keeps getting worse
  • Pus coming from your cut
  • Throwing up that will not stop
  • Belly pain that your medicine does not help

Your Next Visit

See Dr. Patel at the surgery clinic in 10 to 14 days.

What a strong answer includes. A complete answer keeps: the antibiotic twice a day with food for 7 days and finishing it; acetaminophen 650 mg every 6 hours as needed with a 3,000 mg daily maximum; no NSAIDs such as ibuprofen for 7 days; showering after 48 hours and no baths for 2 weeks; all four warning signs (fever over 101°F, spreading redness or pus, ongoing vomiting, uncontrolled belly pain); and the 10–14 day follow-up.

Business writing

Push back on a price increase

Task
Write an email from Maya Chen, operations manager at a 12-location dental group, to Jordan at BrightSmile Supply. BrightSmile has announced an 18% price increase starting next month. Maya wants to keep the relationship but cannot accept the full increase. Propose two concrete alternatives and ask for a call this week. Be warm and firm. Keep it under 150 words, including a subject line.
DeepSeek V4.1 Flash 10175s · $0.0002

Subject: Let’s find a workable path on the 18% increase

Hi Jordan,

I appreciate the partnership we’ve built with BrightSmile across our 12 locations, and I want to keep it strong. I also need to be direct: we can’t absorb the full 18% increase starting next month.

Two alternatives I’d like to discuss:

  1. Phase in the increase over six months, with 6% now and the remainder reviewed in Q3.
  2. Hold current pricing on our top three product categories in exchange for a 12-month volume commitment.

Can we schedule a call this week? I’m available Tuesday or Thursday afternoon. I’m confident we can find a solution that works for both sides.

Warmly,

Maya Chen

Operations Manager

Claude Opus 5.59s · $0.021

Subject: Finding a workable path on the new pricing

Hi Jordan,

Thanks for the advance notice on the 18% increase. BrightSmile has been a dependable partner for all 12 of our locations, and I want to keep it that way. That said, we can't absorb the full increase in our current budget.

Two options I'd like to discuss:

  1. Phased increase: 6% next month, with any further adjustment revisited at our review in six months.
  2. Longer commitment: a two-year agreement with consolidated monthly ordering across all locations, in exchange for capping the increase at 8%.

I'm open to other ideas that get us to a similar place. Do you have 30 minutes Thursday or Friday for a call? I'd like to settle this before the new pricing takes effect.

Best,

Maya Chen

Operations Manager, [Dental Group Name]

What a strong answer includes. Look for a clear subject line, a firm statement that 18% is not acceptable, two specific alternatives (for example a smaller or phased increase, a longer contract or volume commitment), a request for a call this week, and a length under 150 words.

Coding

Fix a bug in a Python function

Task
This function returns the wrong answer. Explain the bug in one or two sentences, give a corrected version, and add two short test cases.

def average_order_value(orders):
    """Return the average order total, ignoring refunded orders."""
    total = 0
    for order in orders:
        if order["status"] != "refunded":
            total += order["total"]
    return total / len(orders)
DeepSeek V4.1 Flash 101714s · $0.0003

The bug is that the function divides by len(orders), which includes refunded orders, instead of dividing by the number of non-refunded orders. It also needs to handle the case where there are no non-refunded orders.

def average_order_value(orders):
    """Return the average order total, ignoring refunded orders."""
    total = 0
    count = 0
    for order in orders:
        if order["status"] != "refunded":
            total += order["total"]
            count += 1
    return total / count if count else 0

Test cases:

orders1 = [
    {"status": "paid", "total": 100},
    {"status": "refunded", "total": 999},
    {"status": "paid", "total": 50},
]
assert average_order_value(orders1) == 75

orders2 = [
    {"status": "refunded", "total": 100},
    {"status": "paid", "total": 20},
]
assert average_order_value(orders2) == 20
Claude Opus 5.55s · $0.0092

Bug: The sum skips refunded orders, but the division uses len(orders), which still counts them. That drags the average down whenever any order is refunded, and it raises ZeroDivisionError on an empty list.

Corrected version:

def average_order_value(orders):
    """Return the average order total, ignoring refunded orders."""
    total = 0
    count = 0
    for order in orders:
        if order["status"] != "refunded":
            total += order["total"]
            count += 1
    if count == 0:
        return 0.0  # no valid orders; adjust (e.g., return None) if preferred
    return total / count

Test cases:

def test_ignores_refunded_orders():
    orders = [
        {"status": "completed", "total": 100},
        {"status": "refunded",  "total": 50},
        {"status": "completed", "total": 200},
    ]
    assert average_order_value(orders) == 150  # buggy version returns 100

def test_all_refunded_or_empty():
    assert average_order_value([]) == 0.0
    assert average_order_value([{"status": "refunded", "total": 80}]) == 0.0

What a strong answer includes. The function divides by every order, including refunded ones, so the average is too low. A complete fix counts only non-refunded orders and handles an empty list or all-refunded orders without dividing by zero.

Spreadsheets

Write a spreadsheet formula

Task
In Excel, column A has order dates, column B has the sales region and column C has revenue, with headers in row 1 and data in rows 2–5000. Write one formula that returns total revenue for the "West" region in the third quarter of 2026 (July 1 through September 30). Briefly explain how it works.
DeepSeek V4.1 Flash 101718s · $0.0001
=SUMIFS(C2:C5000,B2:B5000,"West",A2:A5000,">="&DATE(2026,7,1),A2:A5000,"<="&DATE(2026,9,30))

This uses SUMIFS to sum revenue in C2:C5000 only where:

  • B2:B5000 equals "West", and
  • A2:A5000 is on or after July 1, 2026, and
  • A2:A5000 is on or before September 30, 2026.

It assumes column A contains real Excel dates, not text.

Claude Opus 5.57s · $0.014

Formula

=SUMIFS(C2:C5000, B2:B5000, "West", A2:A5000, ">="&DATE(2026,7,1), A2:A5000, "<"&DATE(2026,10,1))

How it works

SUMIFS adds values from one range only for rows that meet all of the listed conditions:

  1. C2:C5000 is the range to sum (revenue).
  2. B2:B5000, "West" keeps only rows where the region is West. The match is not case-sensitive.
  3. A2:A5000, ">="&DATE(2026,7,1) keeps only dates on or after July 1, 2026. The & joins the operator >= to the date value. DATE makes the formula work regardless of regional date formats.
  4. A2:A5000, "<"&DATE(2026,10,1) keeps only dates before October 1, 2026.

Using "before October 1" instead of "on or before September 30" means any Sept 30 entries that include a time (e.g., 9/30/2026 3:45 PM) are still counted.

Notes

  • Column A must contain real Excel dates, not text that looks like dates. Otherwise the date conditions won't match.
  • Region values with extra spaces (e.g., "West ") won't match "West".
  • To make the formula reusable, you could put the region and dates in cells and reference them, e.g., B2:B5000, F1, A2:A5000, ">="&F2.

What a strong answer includes. One correct answer: =SUMIFS(C2:C5000,B2:B5000,"West",A2:A5000,">="&DATE(2026,7,1),A2:A5000,"<"&DATE(2026,10,1)). Ending before October 1 also counts orders timestamped later on September 30; "<=" September 30 works only when dates have no time. DATE() avoids regional date-format problems that typed dates such as "7/1/2026" can cause.

Scores, cost and speed

DeepSeek vs Claude: scores, cost and speed reported by Artificial Analysis
MeasureDeepSeek V4.1 Flash 1017 (Max)Claude Opus 5.5 (Max, Default Fallback)
Overall
Intelligence IndexCombined score across nine evaluations32.5Leads: 58.4
Professional work
Finance & accounting42.2Leads: 59.4
Legal37.7Leads: 58.0
Healthcare & medical41.3Leads: 57.9
Engineering37.5Leads: 64.6
Strategy & operations49.2Leads: 61.4
Economics40.3Leads: 62.3
Specific tests
Terminal-Bench 4.0Agentic coding tasks33.8%Leads: 59.6%
FrontierCode 2.0Hard programming problems28.5%Leads: 46.4%
Humanity’s Last ExamExpert-level questions43.3%Leads: 61.4%
HealthBenchHealth conversations graded by physicians’ rubrics—57.0%
GDPval-AAKnowledge-work deliverables, Elo1746Leads: 1866
Hallucination rateAA-Omniscience; lower is better64.1%Leads: 50.3%
Cost & speed
Input priceUS$ per 1M tokensLeads: $0.30$4
Output priceUS$ per 1M tokensLeads: $1.20$20
Cost to run the indexUS$, includes reasoning tokensLeads: $521$8,910
Output speedMedian tokens per secondLeads: 174 tok/s96 tok/s
Context windowTokens1M1M

Scores, prices and speeds: Artificial Analysis, independently measured, checked Nov 3, 2026. Model names include the tested reasoning setting. Stubbi has not rerun these evaluations. Consumer apps such as ChatGPT, Claude and Gemini may use other models and add features like search and memory.

All measured DeepSeek and Claude models

Model and settingReleasedIndexPrice in / out
Claude Opus 5.5 (Max, Default Fallback)AnthropicSep 202658.4$4 / $20
Claude Sonnet 5.5 (Max, Default Fallback)AnthropicSep 202654.2$2 / $10
Claude Fable 5.1 (Max, Default Fallback)AnthropicSep 202649.0$10 / $50
Claude Haiku 5.5 (Max)AnthropicOct 202636.2$0.10 / $0.50
DeepSeek V4.1 Flash 1017 (Max)DeepSeekOct 202632.5$0.30 / $1.20

Test them on your own work

Public scores can’t show how each model handles your documents, clients or standards. Tell us the task, and we’ll consider a side-by-side comparison with the outputs you can judge.