Skip to content

Gemini 4 Argon · Coding

Gemini 4 Argon for coding: our test runs

Gemini 4 Argon ran our 5 coding prompts in llmwise, through the same pipeline your messages take. Here's every reply as it came, whether it passed, what it cost and what it counts as on Pro, next to the other models.

Based on 5 of our test runs on , through OpenRouter with the app's own prompt and settings. Updated .

Short answer

In our test runs on October 15, 2026, Gemini 4 Argon passed 5 of 5 of our coding prompts (both hard ones): tied 1st of 20 models. Each reply counted as 1 message on Pro, where it has 62 a month, and cost $0.0024 to run on average.

Prompt by prompt

Each of the 5 coding prompts, and how Gemini 4 Argon's reply did.

Gemini 4 Argon on each coding prompt
PromptResultCostTime
Turn a title into a URL slugEverydayPassed: All 7 tests passed.$0.00122.9 s
Parse a duration like “1h 30m”EverydayPassed: All 10 tests passed.$0.00183.5 s
Merge overlapping intervalsEverydayPassed: All 7 tests passed.$0.00173.4 s
Evaluate an arithmetic expression, no evalHardPassed: All 15 tests passed.$0.00509.7 s
Parse CSV with quoted fieldsHardPassed: All 8 tests passed.$0.00255.0 s

Every coding reply from Gemini 4 Argon

  1. Turn a title into a URL slug

    An everyday prompt: “Turn a title into a URL slug”, in full.

    Passed: All 7 tests passed.

    ```javascript
    function slugify(title) {
      return String(title)
        .normalize('NFD')
        .replace(/[\u0300-\u036f]/g, '')
        .toLowerCase()
        .replace(/[^a-z0-9]+/g, '-')
        .replace(/^-|-$/g, '');
    }
    ```

    736 tokens in, 88 out · 2.9 s · $0.0012 · 1 message on Pro · answered by google/gemini-4-argon via Google AI Studio ·

  2. Parse a duration like “1h 30m”

    An everyday prompt: “Parse a duration like “1h 30m””, in full.

    Passed: All 10 tests passed.

    ```javascript
    function parseDuration(text) {
      if (typeof text !== "string") {
        return null;
      }
    
      const trimmed = text.trim();
      if (!trimmed) {
        return null;
      }
    
      const match = /^(?:(\d+)h)?\s*(?:(\d+)m)?\s*(?:(\d+)s)?$/.exec(trimmed);
      if (!match) {
        return null;
      }
    
      const [, h, m, s] = match;
      if (h === undefined && m === undefined && s === undefined) {
        return null;
      }
    
      const hours = h ? Number(h) : 0;
      const minutes = m ? Number(m) : 0;
      const seconds = s ? Number(s) : 0;
    
      return hours * 3600 + minutes * 60 + seconds;
    }
    ```

    720 tokens in, 213 out · 3.5 s · $0.0018 · 1 message on Pro · answered by google/gemini-4-argon via Google AI Studio ·

  3. Merge overlapping intervals

    An everyday prompt: “Merge overlapping intervals”, in full.

    Passed: All 7 tests passed.

    ```javascript
    function mergeIntervals(intervals) {
      if (!intervals || intervals.length === 0) {
        return [];
      }
    
      const sorted = intervals
        .map(([start, end]) => [start, end])
        .sort((a, b) => a[0] - b[0] || a[1] - b[1]);
    
      const merged = [sorted[0]];
    
      for (let i = 1; i < sorted.length; i++) {
        const current = sorted[i];
        const last = merged[merged.length - 1];
    
        if (current[0] <= last[1]) {
          last[1] = Math.max(last[1], current[1]);
        } else {
          merged.push(current);
        }
      }
    
      return merged;
    }
    ```

    698 tokens in, 198 out · 3.4 s · $0.0017 · 1 message on Pro · answered by google/gemini-4-argon via Google AI Studio ·

  4. Evaluate an arithmetic expression, no eval

    A hard prompt: “Evaluate an arithmetic expression, no eval”, in full.

    Passed: All 15 tests passed.

    ```javascript
    function evaluate(expression) {
      if (typeof expression !== 'string') {
        throw new Error('Invalid expression');
      }
    
      const tokens = [];
      let i = 0;
    
      while (i < expression.length) {
        const ch = expression[i];
    
        if (/\s/.test(ch)) {
          i++;
          continue;
        }
    
        if ('+-*/^()'.includes(ch)) {
          tokens.push({ type: ch });
          i++;
          continue;
        }
    
        if (/[0-9]/.test(ch)) {
          let numStr = '';
          let hasDot = false;
          while (i < expression.length && (/[0-9]/.test(expression[i]) || expression[i] === '.')) {
            if (expression[i] === '.') {
              if (hasDot) throw new Error('Invalid number');
              hasDot = true;
            }
            numStr += expression[i];
            i++;
          }
          if (numStr.endsWith('.')) {
            throw new Error('Invalid number');
          }
          tokens.push({ type: 'num', value: Number(numStr) });
          continue;
        }
    
        throw new Error(`Unexpected character: ${ch}`);
      }
    
      let pos = 0;
    
      function peek() {
        return tokens[pos];
      }
    
      function consume(expectedType) {
        const tok = tokens[pos];
        if (!tok || (expectedType && tok.type !== expectedType)) {
          throw new Error('Unexpected token');
        }
        pos++;
        return tok;
      }
    
      function parseExpression() {
        let val = parseTerm();
        while (peek() && (peek().type === '+' || peek().type === '-')) {
          const op = consume().type;
          const right = parseTerm();
          val = op === '+' ? val + right : val - right;
        }
        return val;
      }
    
      function parseTerm() {
        let val = parseUnary();
        while (peek() && (peek().type === '*' || peek().type === '/')) {
          const op = consume().type;
          const right = parseUnary();
          val = op === '*' ? val * right : val / right;
        }
        return val;
      }
    
      function parseUnary() {
        if (peek() && peek().type === '-') {
          consume('-');
          return -parseUnary();
        }
        return parsePower();
      }
    
      function parsePower() {
        const base = parsePrimary();
        if (peek() && peek().type === '^') {
          consume('^');
          const exp = parseUnary();
          return Math.pow(base, exp);
        }
        return base;
      }
    
      function parsePrimary() {
        const tok = peek();
        if (!tok) {
          throw new Error('Unexpected end of expression');
        }
        if (tok.type === 'num') {
          consume('num');
          return tok.value;
        }
        if (tok.type === '(') {
          consume('(');
          const val = parseExpression();
          consume(')');
          return val;
        }
        throw new Error(`Unexpected token: ${tok.type}`);
      }
    
      if (tokens.length === 0) {
        throw new Error('Empty expression');
      }
    
      const result = parseExpression();
    
      if (pos < tokens.length) {
        throw new Error('Unexpected trailing tokens');
      }
    
      return result;
    }
    ```

    809 tokens in, 841 out · 9.7 s · $0.0050 · 1 message on Pro · answered by google/gemini-4-argon via Google AI Studio ·

  5. Parse CSV with quoted fields

    A hard prompt: “Parse CSV with quoted fields”, in full.

    Passed: All 8 tests passed.

    ```javascript
    function parseCsv(text) {
      if (text === "") return [];
    
      const rows = [];
      let row = [];
      let field = "";
      let inQuotes = false;
      let fieldStart = true;
    
      for (let i = 0; i < text.length; i++) {
        const ch = text[i];
    
        if (inQuotes) {
          if (ch === '"') {
            if (text[i + 1] === '"') {
              field += '"';
              i++;
            } else {
              inQuotes = false;
            }
          } else {
            field += ch;
          }
          continue;
        }
    
        if (fieldStart && ch === '"') {
          inQuotes = true;
          fieldStart = false;
        } else if (ch === ",") {
          row.push(field);
          field = "";
          fieldStart = true;
        } else if (ch === "\n" || (ch === "\r" && text[i + 1] === "\n")) {
          if (ch === "\r") i++;
          row.push(field);
          rows.push(row);
          row = [];
          field = "";
          fieldStart = true;
          if (i === text.length - 1) return rows;
        } else {
          field += ch;
          fieldStart = false;
        }
      }
    
      row.push(field);
      rows.push(row);
      return rows;
    }
    ```

    736 tokens in, 359 out · 5.0 s · $0.0025 · 1 message on Pro · answered by google/gemini-4-argon via Google AI Studio ·

How it compares on coding

Gemini 4 Argon beside the job's picks among every model. 18 models share the hard-problems pick, Gemini 4 Argon among them.

Gemini 4 Argon beside other models on coding
ModelPassedOn ProCost per reply
GLM 5.3Our pick: hard problems (shared), best value5 of 5250 a month on Pro$0.0015
GLM 5.3 FlashOur pick: hard problems (shared), everyday5 of 560 a day on Pro$0.0003
Gemini 4 ArgonOur pick: hard problems (shared)5 of 562 a month on Pro$0.0024
On Pro: Pro's count on each model. Cost: what OpenRouter charged us per reply, on average.

Every limit is published. Paid plans also have a monthly fair-use limit on AI cost: Plus $3.75, Pro $7.50, Max $20, Ultra $42, Studio $85. Using every message on your plan at typical sizes stays under it; very large messages and heavy research use it faster. Every limit, explained.

Gemini 4 Argon next to each model on coding

Gemini 4 Argon against each model on the same 5 coding prompts. One run each, through OpenRouter: a wait depends on the provider and the load that day, so a lead under 10% counts as close.

  • Against Claude Fable 5.1: Gemini 4 Argon answered 1.6× sooner (3.5 s to 5.5 s), cost 17.4× less, and passed 5 of 5 to its 5.

  • Against Claude Opus 5.5: Gemini 4 Argon answered 2.1× sooner (3.5 s to 7.2 s), cost 7.0× less, and passed 5 of 5 to its 5.

  • Against Claude Sonnet 5.5: Gemini 4 Argon answered 1.8× later (3.5 s to 2.0 s), cost 2.6× less, and passed 5 of 5 to its 5.

  • Against Claude Sonnet 5: Gemini 4 Argon answered 1.3× later (3.5 s to 2.7 s), cost 4.2× less, and passed 5 of 5 to its 5.

  • Against Claude Haiku 5.5: Gemini 4 Argon answered 1.1× sooner (3.5 s to 3.9 s), cost 5.4× more, and passed 5 of 5 to its 5.

  • Against Claude Haiku 4.5: Gemini 4 Argon answered 1.5× later (3.5 s to 2.3 s), cost 1.1× less, and passed 5 of 5 to its 3. Only Gemini 4 Argon passed Evaluate an arithmetic expression, no eval; Parse CSV with quoted fields.

  • Against GPT-6 Astra: Gemini 4 Argon answered 2.4× sooner (3.5 s to 8.2 s), cost 9.2× less, and passed 5 of 5 to its 5.

  • Against GPT-6.1 Sol: Gemini 4 Argon answered 1.4× sooner (3.5 s to 4.8 s), cost within 10% of it, and passed 5 of 5 to its 5.

  • Against GPT-6 Sol: Gemini 4 Argon answered 1.4× sooner (3.5 s to 4.8 s), cost 2.2× less, and passed 5 of 5 to its 5.

  • Against GPT-6 Luna: Gemini 4 Argon answered 1.3× sooner (3.5 s to 4.6 s), cost 8.5× more, and passed 5 of 5 to its 5.

  • Against Gemini 3.1 Pro (preview): Gemini 4 Argon answered 3.0× sooner (3.5 s to 10.3 s), cost 8.0× less, and passed 5 of 5 to its 5.

  • Against Gemini 3.8 Flash: Gemini 4 Argon answered 1.2× sooner (3.5 s to 4.2 s), cost 1.3× more, and passed 5 of 5 to its 5.

  • Against DeepSeek V4.1 Flash: Gemini 4 Argon answered 1.4× later (3.5 s to 2.5 s), cost 1.3× more, and passed 5 of 5 to its 5.

  • Against DeepSeek V4 Pro: Gemini 4 Argon answered 34.4× sooner (3.5 s to 119.6 s), cost 9.8× less, and passed 5 of 5 to its 5.

  • Against Grok 4.7: Gemini 4 Argon answered 9.1× sooner (3.5 s to 31.6 s), cost 10.1× less, and passed 5 of 5 to its 5.

  • Against Kimi K3: Gemini 4 Argon answered 1.2× sooner (3.5 s to 4.1 s), cost 2.6× less, and passed 5 of 5 to its 5.

  • Against GLM 5.3: Gemini 4 Argon answered 3.3× later (3.5 s to 1.1 s), cost 1.7× more, and passed 5 of 5 to its 5.

  • Against GLM 5.3 Flash: Gemini 4 Argon answered 2.4× sooner (3.5 s to 8.4 s), cost 9.6× more, and passed 5 of 5 to its 5.

  • Against Mistral Large 4: Gemini 4 Argon answered 10.6× sooner (3.5 s to 36.8 s), cost 3.0× less, and passed 5 of 5 to its 4. Only Gemini 4 Argon passed Evaluate an arithmetic expression, no eval.

How these runs were done

Tests. Automatic. The function runs against the prompt's tests in a separate Node.js process with a time limit and no file, network or child-process access; it passes when every test passes.

How the runs were done, and every coding prompt.

Gemini 4 Argon, and coding, elsewhere

Questions

Is Gemini 4 Argon good for coding?

In our test runs it passed 5 of 5 coding prompts, tied 1st of the 20 models in llmwise. Every reply is on this page, so you can judge them yourself.

How many of my messages does a coding reply from Gemini 4 Argon use?

1 message each on Pro, where it has 62 a month on Pro. The price of a message is fixed and shown before you send it, however long the reply.

How were these runs done?

The same way for every model: each prompt sent through llmwise's own pipeline, each reply checked the same way. The methods page has every prompt and how each is scored.

Claude, GPT, Gemini, DeepSeek, Grok, Kimi, GLM, and Mistral, in one chat.

See what a message costs before you send it. Free is 5 messages to try; sign in with an email link, no password or card.