Skip to content

I Pay for Three AI Subscriptions. Here's How I Actually Use Them All.

The Problem

I was looking at my credit card statement and realized something frustrating.

Claude Pro: $20/month. ChatGPT Plus: $20/month. Various API credits across providers. Total: way too much for tools I rarely used.

Here’s the embarrassing part: I was paying for all of them, but only using one at a time. When I wanted Claude, I opened Claude’s web interface. When I wanted GPT-4, I opened ChatGPT. When I wanted to code, I’d switch to Cursor or VS Code with Copilot.

Each tool locked me into its own ecosystem. My Claude subscription sat unused while I worked in Cursor. My ChatGPT subscription gathered dust while I debugged with Claude Code.

I found a Reddit thread that nailed this problem:

“Outside of OpenCode I’ve actually loved Codex, with the main drawback being that I can’t use the other model plans I’m paying for in it.”

This is the AI subscription fragmentation problem. And it’s expensive.

Why This Happens

Most AI coding assistants are tied to a single provider:

Claude Code -> Anthropic only
Cursor -> Anthropic (with limited options)
Copilot -> OpenAI only
ChatGPT -> OpenAI only

If you’re like me and want the best model for each task, you end up with:

  • Claude Opus for complex reasoning
  • GPT-4 for certain coding tasks
  • Different tools for different workflows

But the tools don’t talk to each other. You can’t use your ChatGPT Plus subscription inside Claude Code. You can’t use your Claude Pro subscription inside Cursor (at least, not easily).

So you either:

  1. Pay for tools you don’t fully use
  2. Constantly switch between apps
  3. Settle for one provider and accept the limitations

I wanted option 4: one app that lets me use all my subscriptions.

What I Found: Multi-Provider Desktop Apps

The solution is desktop apps that support multiple API providers. These apps let you:

  • Configure multiple API keys (Anthropic, OpenAI, etc.)
  • Switch between models seamlessly
  • Keep conversation context when switching
  • Use your existing subscriptions

One option that caught my attention was NeoCode, described as a “Mac-native OpenCode desktop replacement” that supports different model plans.

Let me show you how this works.

How Multi-Provider Apps Work

The architecture is straightforward. Instead of hardcoding one provider, the app acts as a router:

Multi-provider architecture diagram
┌─────────────────────────────────────────────────────┐
│ Desktop App │
│ ┌───────────────────────────────────────────────┐ │
│ │ Model Router │ │
│ │ │ │
│ │ User Request -> Route to Provider -> Response│ │
│ └───────────────────────────────────────────────┘ │
│ │ │
│ ┌────────────┼────────────┐ │
│ ▼ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Anthropic│ │ OpenAI │ │ Others │ │
│ │ API │ │ API │ │ APIs │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │ │ │ │
│ Claude Pro ChatGPT Plus Your APIs │
│ ($20/mo) ($20/mo) (pay per use) │
└─────────────────────────────────────────────────────┘

When you send a request, the app routes it to the appropriate provider based on your selected model.

Configuration Example

Here’s what a typical configuration looks like:

config.json
{
"providers": [
{
"name": "anthropic",
"apiKey": "${ANTHROPIC_API_KEY}",
"models": ["claude-sonnet-4-20250514", "claude-opus-4-20250514"]
},
{
"name": "openai",
"apiKey": "${OPENAI_API_KEY}",
"models": ["gpt-4o", "gpt-4-turbo"]
}
],
"defaultModel": "claude-sonnet-4-20250514"
}

The key points:

  1. API keys stored securely (environment variables, not hardcoded)
  2. Model lists per provider
  3. A default model for when you don’t specify

Setting Up Multiple Providers

Here’s the process I followed:

Step 1: Gather your API keys

For Anthropic (Claude):

  • Go to console.anthropic.com
  • Create an API key
  • Note: This is separate from Claude Pro subscription

For OpenAI:

  • Go to platform.openai.com
  • Create an API key
  • Note: This is separate from ChatGPT Plus subscription

Step 2: Set environment variables

~/.zshrc or ~/.bashrc
export ANTHROPIC_API_KEY="sk-ant-..."
export OPENAI_API_KEY="sk-..."

Step 3: Configure the app

Each multi-provider app has its own config format, but the concept is the same: point it at your API keys, tell it which models you want.

Step 4: Switch models mid-conversation

The real power is keeping context while switching models:

You: Help me debug this Python code.
[Claude Sonnet responds with analysis]
You: Now generate a test suite for it using GPT-4.
[Switch to GPT-4o, same conversation context]
You: Back to Claude, explain why this test fails.
[Switch back to Claude, context preserved]

Why This Matters for Developers

I’ve identified three main benefits:

Cost efficiency: Use all subscriptions you pay for

If you’re paying $40/month for Claude Pro and ChatGPT Plus, but only using one, you’re wasting $20/month. Multi-provider apps let you actually use what you pay for.

Workflow continuity: No context switching between apps

Before, if I started a debugging session in Claude Code but wanted GPT-4’s take on the same code, I had to:

  1. Copy the conversation context
  2. Paste into ChatGPT
  3. Re-explain what we were doing
  4. Get a response that might reference things the new AI doesn’t know about

Now it’s one conversation, multiple models.

Model specialization: Choose the best model for each task

Different models excel at different things:

  • Claude Opus: Deep reasoning, complex analysis
  • Claude Sonnet: Fast coding, balanced tasks
  • GPT-4: Some coding tasks, certain types of analysis

With multi-provider apps, you’re not locked into one model’s strengths and weaknesses.

The Challenge I Hit

It wasn’t all smooth. When I first tried to list all available models, I got an error:

error listing all models

This was a bug in the model listing feature. The app could use individual models I configured, but couldn’t automatically fetch the full list from each provider.

The workaround was to manually specify models in the config instead of relying on auto-discovery.

This is still a relatively new space, so expect some rough edges.

Common Challenges with Multi-Provider Apps

Based on my experience and the Reddit discussion:

1. Configuration complexity

Setting up multiple API keys isn’t as simple as one-click subscription. You need to:

  • Create developer accounts with each provider
  • Manage API keys securely
  • Understand usage-based pricing vs subscription pricing

2. Model listing bugs

Some apps have issues listing all available models from each provider. Manual configuration may be required.

3. Feature parity

Not all models support the same features:

  • Vision capabilities vary
  • Tool use/function calling differs
  • Context window sizes differ

4. Cost tracking

When using multiple providers, it’s harder to track total spend. Each provider bills separately.

Subscription vs API Pricing: Know the Difference

Here’s something that tripped me up initially:

Subscription pricing (Claude Pro, ChatGPT Plus):

  • Fixed monthly cost ($20/month)
  • Unlimited or high usage within limits
  • Web interface only (usually)

API pricing (Anthropic API, OpenAI API):

  • Pay per token
  • No fixed cost
  • Can be used in any app that supports the API
  • Can be much cheaper OR much more expensive depending on usage

Multi-provider desktop apps typically use API keys, not subscriptions. So your Claude Pro subscription doesn’t automatically work - you need an Anthropic API key with credits.

However, for heavy users, API pricing can actually be cheaper than subscriptions. And you get more flexibility.

Comparison Table

ApproachProsCons
Single-provider tool (Claude Code, Cursor)Simple setup, integrated experienceLocked into one provider
Web interfaces (claude.ai, chatgpt.com)Easy to try, no setupNo file access, copy-paste workflow
Multi-provider desktop appUse all subscriptions, one interfaceMore setup, potential bugs
CLI tools with multiple configsMaximum flexibility, scriptableHigher learning curve

When Multi-Provider Makes Sense

This approach isn’t for everyone. Here’s when it’s worth it:

Use multi-provider if:

  • You pay for multiple AI subscriptions
  • You want the best model for each specific task
  • You’re comfortable with API configuration
  • You value workflow continuity over simplicity

Stick with single-provider if:

  • One model meets 95% of your needs
  • You prefer one-click setup
  • You don’t want to manage API keys
  • You’re on a tight budget (one subscription is enough)

Summary

In this post, I explained how to consolidate multiple AI subscriptions into one desktop app using multi-provider tools like NeoCode.

The key insight is that most AI tools lock you into one provider’s ecosystem, wasting money on unused subscriptions. Multi-provider desktop apps solve this by acting as a router between different AI APIs, letting you switch models mid-conversation while preserving context.

If you’re paying for Claude Pro, ChatGPT Plus, and other AI tools but only using one at a time, you’re overpaying. A multi-provider app can help you actually use what you pay for.

The tradeoff is more configuration complexity and some rough edges in newer tools. But for developers who want flexibility and cost efficiency, it’s worth exploring.

Final Words + More Resources

My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me

Here are also the most important links from this article along with some further resources that will help you in this scope:

Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!

Comments