How to Refactor Code for Modern Development

Learn how to refactor code with battle-tested strategies. Go beyond cleanup and discover how to improve velocity, reduce bugs, and manage technical debt.

how to refactor codecode refactoringclean codetechnical debtsoftware development

Refactoring isn't a massive, one-off project. Think of it as a repeatable cycle: spot a problem area, write tests to build a safety net, and then make small, verifiable improvements. Approaching it this way turns code improvement from a daunting overhaul into a manageable, routine part of your workflow.

Why Refactoring Is a Core Developer Skill

Let's be honest—refactoring often gets shoved to the bottom of the backlog in favor of shiny new features. But in modern development, it’s not just a cleanup task; it's a critical survival skill. Treating it as a strategic practice is what maintains development velocity, keeps your team in sync, and ensures your project doesn't crumble under its own weight over time.

With AI tools churning out code faster than ever before, the risk of accumulating technical debt has gone through the roof. An actionable insight here is to use a platform that offers visibility into your codebase's health, helping you proactively manage this debt. If you're looking for a deeper dive, these are a great resource for keeping your project healthy and agile.

The New Reality of Code Quality

The rise of AI-assisted programming has completely changed the game. These tools are incredibly powerful, but they can also introduce subtle, messy issues if you're not paying close attention. The data is already showing a clear trend toward more frequent, smaller-scale code changes.

One analysis of over 153 million lines of code found that code churn—the percentage of code that gets changed or deleted shortly after being added—is on the rise. This tells us that while we're definitely writing code faster, the initial quality isn't always there, forcing us to make quick follow-up fixes. At the same time, code duplication has also increased, which points to more copy-paste solutions instead of thoughtful refactoring. You can find more of these insights in this study on .

Refactoring is no longer about chasing perfection; it’s about adaptation. It's the disciplined art of improving an existing codebase’s design—making it easier to understand and cheaper to change—without altering what it actually does.

The foundational process of refactoring can be boiled down to a simple, repeatable loop. Understanding these core steps helps anchor your efforts and ensures you're making safe, measurable progress.

The Core Refactoring Cycle at a Glance

PhaseObjectiveKey Action
1. IdentifyPinpoint a "code smell" or area for improvement.Look for long methods, duplicate code, or confusing logic.
2. TestCreate a safety net to prevent regressions.Write characterization tests that verify the current behavior.
3. ImproveMake small, incremental changes to the code.Apply a refactoring pattern and run tests after each change.

This cycle isn't meant to be done once. It’s a continuous loop you run through, making tiny improvements that add up to a much healthier codebase over time.

Refactoring for Collaboration and Speed

A clean, well-structured codebase is inherently collaborative. When your team can actually understand and modify the code without fear, everyone moves faster.

Here's how refactoring directly helps:

  • It boosts readability. Clear, simple code is just easier to debug and extend. When the logic is straightforward, new team members can get up to speed in days, not weeks.
  • It cuts down on new bugs. Tangled, complex code is a perfect hiding place for bugs. By simplifying it, you make it much harder for new issues to creep in. Paired with great documentation, it's a powerful combination. Check out our guide on to see what that looks like.
  • It makes feature development faster. Building on a solid foundation is always quicker than trying to navigate a maze of technical debt. Refactoring clears the path for whatever is coming next.

In the end, consistent refactoring isn't a cost—it's an investment. An actionable takeaway is to integrate tools like that provide continuous code analysis, turning this investment into a measurable improvement in speed and quality.

Setting Refactoring Goals That Matter

Image

Before you touch a single line of code, you need a destination. Diving into a refactor with a vague goal like "improve the code" is a recipe for endless tinkering and wasted effort. How do you know when you're done? How do you prove it was worth it?

The key is to set specific, outcome-driven goals that actually deliver value. Think of it less like a technical chore and more like a strategic project. You wouldn't start a road trip without a destination in mind, and the same logic applies here. Your goals should be concrete and tie directly back to real-world problems affecting users, the business, or your development team.

Define Tangible Objectives

Let's get specific. Abstract ideas like "better code" don't get you very far. You need goals you can act on and, just as importantly, measure. This is how you turn a messy codebase into a tangible business asset.

Here are a few examples of what a strong, actionable refactoring goal looks like:

  • Decouple the payment module to speed up future feature development in our e-commerce checkout.
  • Reduce the bug rate in the user authentication flow by 50% over the next quarter.
  • Improve the response time of the main dashboard API by 30% to enhance user experience.
  • Simplify the data processing logic to cut new developer onboarding time for that module in half.

The most successful refactoring efforts are those that align technical improvements with clear business objectives. When you can say, "This change will make us faster and save money," you get buy-in. It's no longer just cleaning code; it's driving value.

Connecting Technical Work to Business Impact

So, where do you start? You need to do a bit of detective work. Hunt for the real pain points. Look for the performance bottlenecks that are frustrating users, the brittle components that seem to break every time someone looks at them, or those overly complex modules that bring your entire team to a grinding halt.

These areas are your prime candidates.

Once you’ve set your goals, you absolutely have to track your progress. An actionable way to do this is with a platform like . Its AI-powered Coding Assistant can help you establish a baseline for code health and then monitor improvements over time. This provides the hard data you need to show stakeholders the real-world impact of your refactoring, turning technical debt into a measurable return on investment.

Spotting and Prioritizing Code Smells

Now that you have your goals locked in, it’s time to go on a hunt for the specific problem areas in your code. We often call these code smells—they're not quite bugs, but they're hints that something deeper is wrong with the structure. Think of them as the creaks and groans of a house settling; they signal that your code is becoming harder to maintain, understand, and build upon.

Learning to spot these smells is a bit like a seasoned mechanic diagnosing an engine just by listening to it. You start to pick up on the subtle signs that something isn’t right long before a catastrophic failure happens. This skill is what separates reactive bug-fixing from proactive, professional code improvement.

This image highlights some of the most common signs to look for, giving you a visual guide for where to focus your attention.

Image

As you can see, things like duplicated logic and monstrously long methods are classic red flags that a part of your codebase needs some love.

Common Culprits to Look For

While the list of documented code smells is long, a few repeat offenders are usually responsible for the bulk of the technical debt in any project. Keep a sharp eye out for these classic signs of trouble:

  • Duplicate Code: You see the exact same chunk of logic copied and pasted in multiple places. This is a maintenance time bomb. When you need to fix a bug or make a change, you have to hunt down every single instance.
  • Long Method: A single function has ballooned to hundreds of lines, making it impossible to understand at a glance. These behemoths almost always violate the single responsibility principle by trying to do way too much at once.
  • Large Class: Just like a long method, a large class is a sign of muddled responsibilities. It’s often juggling too much data and has an endless list of methods, turning it into a fragile, central point of failure for your application.

The real art of refactoring isn't just finding code smells; it's knowing which ones to fix now and which ones can wait. Not all technical debt is created equal, and prioritizing is key to making a meaningful impact without getting lost in minor tweaks.

A Framework for Prioritization

Once you’ve got a list of potential code smells, the million-dollar question is: where do I even begin? Trying to fix every little thing is a surefire way to get bogged down. A much better approach is to prioritize based on impact.

Here's a quick reference to help you identify and rank common smells you might encounter.

Common Code Smells and Prioritization Matrix

Code SmellSymptomTypical ImpactPriority Level (High/Medium/Low)
Duplicate CodeThe same code block appears in multiple places.High maintenance cost; bug fixes are error-prone.High
Long MethodA function is too long to understand easily.Difficult to read, test, and debug.High
Large ClassA class has too many responsibilities or lines of code.Hard to maintain; high risk of breaking unrelated features.High
Dead CodeUnused variables, methods, or classes clutter the codebase.Adds noise and confusion for developers.Medium
Inconsistent NamingVariables, methods, and classes have unclear or conflicting names.Reduces readability and makes the code hard to follow.Medium
Primitive ObsessionUsing primitive data types instead of creating small objects.Loses valuable domain context and leads to scattered logic.Low

This matrix isn't a hard-and-fast rule, but it's a solid starting point for triage. High-priority smells directly impact your ability to ship features safely and quickly, so they're usually the best place to start.

To refine your priorities even further, ask yourself three simple questions about each problem area:

  1. Business Impact: Does this code touch a critical business function, like your payment gateway or user authentication? Problems here are an immediate red flag.
  2. Change Frequency: How often do developers work in this part of the codebase? A messy but rarely-changed module is less of a headache than a moderately messy one that’s modified every week.
  3. Developer Friction: Is this the part of the code that everyone on the team dreads touching? Fixing these areas delivers a massive boost to productivity and morale.

An actionable insight is to automate this process. Platforms like can analyze your codebase to identify high-friction areas based on change frequency and complexity, giving you a data-driven priority list. This ensures your refactoring efforts deliver the most value.

Interestingly, you don't always have to start with the most complex problems. A found that simply removing dead code was the most common refactoring, accounting for 35.16% of all changes. This was followed by renaming elements for clarity (23.78%) and moving code for better organization (14.81%). These small, foundational improvements often have an outsized impact on readability and are a great way to build momentum.

Proven Refactoring Techniques in Action

Image

Alright, you've got your goals set and you know which code smells to tackle first. Now comes the fun part: getting your hands dirty and actually refactoring the code. The secret here isn't to reinvent the wheel but to apply established, proven patterns that improve your code’s structure without accidentally breaking everything.

Think of these techniques as a craftsman's toolkit. You have different tools for different jobs, and a big part of becoming an expert is knowing which one to reach for. We'll be focusing on making small, incremental changes and—I can't stress this enough—running our tests after every single one. This is our safety net.

Start with Simple, High-Impact Changes

You don't have to start by re-architecting the entire application. In my experience, some of the biggest wins come from incredibly simple changes that make the code easier to read and understand. Two of the most powerful tools in your refactoring arsenal are renaming and extracting.

It sounds almost too basic, but just giving a poorly named variable or method a clear, descriptive name can feel like a revelation to the next developer who reads it. In the same vein, pulling a messy chunk of logic out into its own well-named method is a cornerstone of clean, maintainable code.

  • Rename Variable/Method: This is about clarity, not just style. A function named calc() is a mystery. calculate_total_price_with_tax tells you exactly what it does. Good names are the bedrock of readable code.
  • Extract Method: See a long method that's trying to do three different things at once? Find a self-contained piece of logic and pull it out into a brand-new method. This makes the original function shorter and gives you a new, reusable component.

Your goal with each step should be to make one thing better, not everything at once. Small, verifiable changes are the safest path to a healthier codebase. It's a marathon, not a sprint.

Tackling Complexity with Structural Patterns

Once you've cleared out that low-hanging fruit, it's time to look at deeper, more structural improvements. These techniques are aimed at fixing bigger design problems, like tangled conditional logic that makes code fragile and a nightmare to trace. This often means changing how objects relate to each other to build a more flexible system.

A classic example is seeing a massive if/else block or a sprawling switch statement and replacing it with polymorphism. This is a game-changer. It moves the conditional behavior out of one central function and into separate, specialized objects, making the whole system easier to extend.

From Conditionals to Polymorphism

Let's imagine a function that calculates shipping costs. It probably has a big switch statement to handle different methods: standard, express, overnight, and so on.

This works just fine... until you need to add a new shipping option. Now you have to go back into that central function, add another case, and risk introducing a bug into the existing logic.

A much cleaner way is to use polymorphism. You’d create a common interface, maybe called ShippingMethod, with a calculate method. Then, you create a separate class for each shipping type that implements this interface. Now, adding a new shipping method is as simple as adding a new class. You don't have to touch any of the old, working code. This idea is a core tenet of good software design, which you can read more about in our .

The shift from a giant block of conditionals to a set of distinct, focused objects makes your code far more robust. A great actionable tip is to use a tool like Zemith's Coding Assistant, which can identify complex conditional blocks and suggest refactoring patterns like this, directly accelerating your workflow and improving design quality.

By methodically applying these proven techniques, you start chipping away at your technical debt. Every small change—a clearer name, an extracted method, a simplified conditional—adds up, creating a codebase that’s more resilient, easier to understand, and ultimately, far more valuable.

Using Automation for Safer Refactoring

Trying to pull off a complex refactor by hand is a bit like walking a tightrope without a net. With every change, you're just hoping you don't break something critical. This is exactly why smart automation and modern tooling aren't just nice-to-haves; they're essential for turning a risky overhaul into a controlled, confident process.

Your IDE is your first and best partner in this. Powerhouses like and come packed with built-in refactoring tools that handle the heavy lifting. Think about renaming a method used across dozens of files or pulling out a messy chunk of logic into its own function. These automated actions get it done in seconds, perfectly, saving you from the kind of tedious, error-prone work that leads to bugs.

Your Test Suite: The Ultimate Safety Net

Beyond your IDE, a solid test suite is the single most important tool in your arsenal. It's your safety net.

When you have great test coverage, you can make bold, sweeping changes to the code's structure. Why? Because if you accidentally break something, the tests will scream at you immediately. They act as a living specification of what your code should do, giving you the freedom to refactor aggressively without fear of changing the actual functionality.

Automation isn’t about replacing developers; it’s about empowering them. It takes over the repetitive, high-risk tasks so you can focus on the strategic thinking that actually improves the code.

This combination of automated refactoring tools and a robust test suite creates a fantastic feedback loop. You make a small, automated change, run the tests, and get instant verification. This rhythm—change, test, verify—is the absolute foundation of safe and effective refactoring.

Gaining Visibility with Code Health Platforms

So, you've made the changes, and the tests are green. But how do you prove your refactoring work is actually paying off? This is where you need to zoom out and look at overall code health.

This is where a platform like Zemith provides a crucial, actionable insight. Its integrated Coding Assistant gives you a big-picture view, helping you identify areas needing attention and, critically, track key metrics before and after you make changes. Suddenly, you can measure reductions in code complexity and technical debt, turning an invisible chore into a strategic, data-backed win for your team.

AI is also becoming a bigger player here. Recent data shows AI code generators can cut refactoring time by 20% to 30%. Developers feel the difference, too, with 77.8% reporting that these tools help improve code quality.

But here's the reality check: AI-generated code gets the solution right only about 28.7% of the time on its own. This highlights why skilled, human-led refactoring, backed by powerful monitoring tools, is more critical than ever. You can dive deeper into these numbers in this .

Common Questions About Code Refactoring

Even when you know the theory, refactoring in the real world throws some curveballs. Let's dig into a few of the most common questions and sticky situations developers run into when they try to put these ideas into practice. The best answers usually blend solid technical know-how with a bit of savvy communication.

How Do I Convince My Manager to Allocate Time for Refactoring?

Ah, the classic question. The trick here is to stop talking like a developer and start talking like a business owner. Your manager doesn't care about "technical debt" or "clean code" in the abstract. They care about things that affect the bottom line: speed, risk, and cost.

You have to translate your technical goals into business outcomes. Here’s how you build a compelling case:

  • Frame it around speed: Don't just say the code is messy. Explain how refactoring a specific, clunky module will let the team "ship new features 25% faster."
  • Focus on reducing risk: Pull up the data. Show how many bugs or production incidents trace back to a particular part of the code. Then you can argue that refactoring will "dramatically lower the risk of critical bugs in our checkout process."
  • Talk about money: Onboarding new engineers is expensive, and a confusing codebase makes it even slower. Pitch refactoring as a way to "cut future development costs" by making the code easier for everyone to work with.

An actionable tip is to use a platform like Zemith to gather this data. It can help you pinpoint high-bug-rate modules and quantify technical debt, providing the concrete evidence you need to build a business case that gets a "yes."

What Is the Difference Between Refactoring and Rewriting?

Getting this right is absolutely critical. They sound similar, but they are worlds apart.

Refactoring is like renovating a house one room at a time. You're making small, controlled changes to improve the internal structure—the plumbing, the wiring—without changing what the house does. It remains a functional house throughout the process. It's a disciplined, low-risk approach.

A rewrite is bulldozing the house and starting over. It’s a massive, high-risk gamble that almost never pays off. People always underestimate how long it will take, and in the process, they throw away years of hidden knowledge and subtle bug fixes that were baked into the original code. Unless the foundation is completely rotten and the system is unsalvageable, always choose to refactor.

The "Boy Scout Rule" is your best guide here: always leave the code a little cleaner than you found it. A series of small, consistent improvements is infinitely better and safer than a massive "refactoring project" that's doomed to get canceled halfway through.

How Do I Refactor Legacy Code That Has No Tests?

This is the scariest scenario for any developer. Working on a legacy system without a test suite is like performing surgery in the dark. Your first and only priority is to build a safety net. You do this with something called characterization tests.

These aren't your typical TDD-style unit tests. Their purpose isn't to verify correct behavior; it's simply to lock down the current behavior, warts and all. You write tests that document what the code does right now.

Once you have a suite of these tests and they're all passing, you have a baseline. You've captured the system's behavior. Now, you can finally start to refactor. If you make a small change and a test breaks, you know immediately that you’ve accidentally changed something important. For a deeper dive, it's worth exploring some that are a perfect fit for this kind of work.


Ready to make your refactoring efforts safer and more effective? Zemith provides an all-in-one AI platform with a powerful Coding Assistant to help you analyze code, identify improvements, and track quality metrics over time. Stop guessing and start making data-driven improvements to your codebase by visiting today.

Explore Zemith Features

Everything you need. Nothing you don't.

One subscription replaces five. Every top AI model, every creative tool, and every productivity feature, in one focused workspace.

Every top AI. One subscription.

ChatGPT, Claude, Gemini, DeepSeek, Grok & 25+ more

OpenAI
OpenAI
Anthropic
Anthropic
Google
Google
DeepSeek
DeepSeek
xAI
xAI
Perplexity
Perplexity
OpenAI
OpenAI
Anthropic
Anthropic
Google
Google
DeepSeek
DeepSeek
xAI
xAI
Perplexity
Perplexity
Meta
Meta
Mistral
Mistral
MiniMax
MiniMax
Recraft
Recraft
Stability
Stability
Kling
Kling
Meta
Meta
Mistral
Mistral
MiniMax
MiniMax
Recraft
Recraft
Stability
Stability
Kling
Kling
25+ models · switch anytime

Always on, real-time AI.

Voice + screen share · instant answers

LIVE
You

What's the best way to learn a new language?

Zemith

Immersion and spaced repetition work best. Try consuming media in your target language daily.

Voice + screen share · AI answers in real time

Image Generation

Flux, Nano Banana, Ideogram, Recraft + more

AI generated image
1:116:99:164:33:2

Write at the speed of thought.

AI autocomplete, rewrite & expand on command

AI Notepad

Any document. Any format.

PDF, URL, or YouTube → chat, quiz, podcast & more

📄
research-paper.pdf
PDF · 42 pages
📝
Quiz
Interactive
Ready

Video Creation

Veo, Kling, Grok Imagine and more

AI generated video preview
5s10s720p1080p

Text to Speech

Natural AI voices, 30+ languages

Code Generation

Write, debug & explain code

def analyze(data):
summary = model.predict(data)
return f"Result: {summary}"

Chat with Documents

Upload PDFs, analyze content

PDFDOCTXTCSV+ more

Your AI, in your pocket.

Full access on iOS & Android · synced everywhere

Get the app
Everything you love, in your pocket.

Your infinite AI canvas.

Chat, image, video & motion tools — side by side

Workflow canvas showing Prompt, Image Generation, Remove Background, and Video nodes connected together

Save hours of work and research

Transparent, High-Value Pricing

Trusted by teams at

Google logoHarvard logoCambridge logoNokia logoCapgemini logoZapier logo
OpenAI
OpenAI
Anthropic
Anthropic
Google
Google
DeepSeek
DeepSeek
xAI
xAI
Perplexity
Perplexity
MiniMax
MiniMax
Kling
Kling
Recraft
Recraft
Meta
Meta
Mistral
Mistral
Stability
Stability
OpenAI
OpenAI
Anthropic
Anthropic
Google
Google
DeepSeek
DeepSeek
xAI
xAI
Perplexity
Perplexity
MiniMax
MiniMax
Kling
Kling
Recraft
Recraft
Meta
Meta
Mistral
Mistral
Stability
Stability
4.6
30,000+ users
Enterprise-grade security
Cancel anytime

Free

$0
free forever
 

No credit card required

  • 100 credits daily
  • 3 AI models to try
  • Basic AI chat
Most Popular

Plus

14.99per month
Billed yearly
~1 month Free with Yearly Plan
  • 1,000,000 credits/month
  • 25+ AI models — GPT, Claude, Gemini, Grok & more
  • Agent Mode with web search, computer tools and more
  • Creative Studio: image generation and video generation
  • Project Library: chat with document, website and youtube, podcast generation, flashcards, reports and more
  • Workflow Studio and FocusOS

Professional

24.99per month
Billed yearly
~2 months Free with Yearly Plan
  • Everything in Plus, and:
  • 2,100,000 credits/month
  • Pro-exclusive models (Claude Opus, Grok 4, Sonar Pro)
  • Motion Tools & Max Mode
  • First access to latest features
  • Access to additional offers
Features
Free
Plus
Professional
100 Credits Daily
1,000,000 Credits Monthly
2,100,000 Credits Monthly
3 Free Models
Access to Plus Models
Access to Pro Models
Unlock all features
Unlock all features
Unlock all features
Access to FocusOS
Access to FocusOS
Access to FocusOS
Agent Mode with Tools
Agent Mode with Tools
Agent Mode with Tools
Deep Research Tool
Deep Research Tool
Deep Research Tool
Creative Feature Access
Creative Feature Access
Creative Feature Access
Video Generation
Video Generation (Via On-Demand Credits)
Video Generation (Via On-Demand Credits)
Project Library Access
Project Library Access
Project Library Access
0 Sources per Library Folder
50 Sources per Library Folder
50 Sources per Library Folder
Unlimited model usage for Gemini 2.5 Flash Lite
Unlimited model usage for Gemini 2.5 Flash Lite
Unlimited model usage for GPT 5 Mini
Access to Document to Podcast
Access to Document to Podcast
Access to Document to Podcast
Auto Notes Sync
Auto Notes Sync
Auto Notes Sync
Auto Whiteboard Sync
Auto Whiteboard Sync
Auto Whiteboard Sync
Access to On-Demand Credits
Access to On-Demand Credits
Access to On-Demand Credits
Access to Computer Tool
Access to Computer Tool
Access to Computer Tool
Access to Workflow Studio
Access to Workflow Studio
Access to Workflow Studio
Access to Motion Tools
Access to Motion Tools
Access to Motion Tools
Access to Max Mode
Access to Max Mode
Access to Max Mode
Set Default Model
Set Default Model
Set Default Model
Access to latest features
Access to latest features
Access to latest features

What Our Users Say

Great Tool after 2 months usage

simplyzubair

I love the way multiple tools they integrated in one platform. So far it is going in right dorection adding more tools.

Best in Kind!

barefootmedicine

This is another game-change. have used software that kind of offers similar features, but the quality of the data I'm getting back and the sheer speed of the responses is outstanding. I use this app ...

simply awesome

MarianZ

I just tried it - didnt wanna stay with it, because there is so much like that out there. But it convinced me, because: - the discord-channel is very response and fast - the number of models are quite...

A Surprisingly Comprehensive and Engaging Experience

bruno.battocletti

Zemith is not just another app; it's a surprisingly comprehensive platform that feels like a toolbox filled with unexpected delights. From the moment you launch it, you're greeted with a clean and int...

Great for Document Analysis

yerch82

Just works. Simple to use and great for working with documents and make summaries. Money well spend in my opinion.

Great AI site with lots of features and accessible llm's

sumore

what I find most useful in this site is the organization of the features. it's better that all the other site I have so far and even better than chatgpt themselves.

Excellent Tool

AlphaLeaf

Zemith claims to be an all-in-one platform, and after using it, I can confirm that it lives up to that claim. It not only has all the necessary functions, but the UI is also well-designed and very eas...

A well-rounded platform with solid LLMs, extra functionality

SlothMachine

Hey team Zemith! First off: I don't often write these reviews. I should do better, especially with tools that really put their heart and soul into their platform.

This is the best tool I've ever used. Updates are made almost daily, and the feedback process is very fast.

reu0691

This is the best AI tool I've used so far. Updates are made almost daily, and the feedback process is incredibly fast. Just looking at the changelogs, you can see how consistently the developers have ...

Available Models
Free
Plus
Professional
Google
Gemini 2.5 Flash Lite
Gemini 2.5 Flash Lite
Gemini 2.5 Flash Lite
Gemini 3.1 Flash Lite
Gemini 3.1 Flash Lite
Gemini 3.1 Flash Lite
Gemini 3 Flash
Gemini 3 Flash
Gemini 3 Flash
Gemini 3.1 Pro
Gemini 3.1 Pro
Gemini 3.1 Pro
OpenAI
GPT 5.4 Nano
GPT 5.4 Nano
GPT 5.4 Nano
GPT 5.4 Mini
GPT 5.4 Mini
GPT 5.4 Mini
GPT 5.4
GPT 5.4
GPT 5.4
GPT 4o Mini
GPT 4o Mini
GPT 4o Mini
GPT 4o
GPT 4o
GPT 4o
Anthropic
Claude 4.5 Haiku
Claude 4.5 Haiku
Claude 4.5 Haiku
Claude 4.6 Sonnet
Claude 4.6 Sonnet
Claude 4.6 Sonnet
Claude 4.6 Opus
Claude 4.6 Opus
Claude 4.6 Opus
DeepSeek
DeepSeek V3.2
DeepSeek V3.2
DeepSeek V3.2
DeepSeek R1
DeepSeek R1
DeepSeek R1
Mistral
Mistral Small 3.1
Mistral Small 3.1
Mistral Small 3.1
Mistral Medium
Mistral Medium
Mistral Medium
Mistral 3 Large
Mistral 3 Large
Mistral 3 Large
Perplexity
Perplexity Sonar
Perplexity Sonar
Perplexity Sonar
Perplexity Sonar Pro
Perplexity Sonar Pro
Perplexity Sonar Pro
xAI
Grok 4.1 Fast
Grok 4.1 Fast
Grok 4.1 Fast
Grok 4
Grok 4
Grok 4
zAI
GLM 5
GLM 5
GLM 5
Alibaba
Qwen 3.5 Plus
Qwen 3.5 Plus
Qwen 3.5 Plus
Minimax
M 2.7
M 2.7
M 2.7
Moonshot
Kimi K2.5
Kimi K2.5
Kimi K2.5
Inception
Mercury 2
Mercury 2
Mercury 2