Cherry is the workspace OpenRouter customers still have to build.
OpenRouter is the unified API. One key, 400+ models across 70+ providers, pay-per-token with credits. It ships a minimal /chat surface and org-level workspace budgets at Enterprise, but the real value is the routing plumbing that lets one API call reach any model. Cherry is the workspace on top. If your team is on OpenRouter today, you either wire it into a bespoke frontend you maintain forever or you use the barebones chat and lose the workspace primitives that make a professional day possible. Cherry ships both: a fifteen-plus entity Postgres data model, the Pins/Clipboard/Snippets three-tier reuse system, per-message UsageEvent attribution, private MinIO file storage, multi-workspace teams with roles and modular Apps. Self-hosted end to end. Cherry stays OpenRouter-compatible under the hood. You own the whole stack.
Three things OpenRouter's API deliberately doesn't do.
OpenRouter is opinionated about being a routing API. That's the strength. The trade-off is that everything above the model call is on you: the workspace, the reuse system, the cost dashboard and the team hierarchy.
You still have to build the frontend
OpenRouter's /chat is functional and minimal. Real teams either build their own Next.js app on top of the API or spread users across half a dozen different chat frontends. Cherry ships the frontend production teams actually want: Next.js 14, streaming SSE, folder tree, pins, clipboard, snippets, compare modal and usage dashboard, all deployed under one URL.
Conversation history is your problem
OpenRouter's API is stateless. You have to persist every conversation yourself. Cherry ships PostgreSQL through Prisma with a schema that already knows about Users, Workspaces, Chats, Messages, Folders, Snippets, UsageEvents and more. History, search and backups are solved out of the box.
Cost visibility is aggregate
OpenRouter shows spend per API key. That's per integration, not per project or per client. Cherry logs a UsageEvent per message with tokens, dollar cost and latency attributed to user, workspace, chat and model. The Recharts dashboard filters by today / 7d / 30d / billing cycle so you can attribute AI spend per client engagement.
Everything above the model call, so you don't have to build it.
OpenRouter is one API key that reaches 400+ models. What it doesn't include is the frontend, the conversation store, the file surface, the reuse system, the compare modal, the cost dashboard or the team hierarchy. Cherry ships all of that. And when you want to keep OpenRouter's routing intelligence, it drops in as a provider adapter next to the direct OpenAI and Anthropic adapters already shipping. Bring the API key you have, get the workspace you were about to build.
OpenRouter vs Cherry.
OpenRouter is the routing plumbing. Cherry is the workspace on top. They compose, and Cherry works fine with OpenRouter as one of its adapters.
| Feature | OpenRouter | Cherry |
|---|---|---|
| Primary product | Unified routing API | Workspace with routing built in |
| Model catalog | 400+ models, 70+ providers | OpenAI + Anthropic shipping, typed adapter for any provider (OpenRouter supported) |
| Pricing | Pay-per-token via credits | Contact sales, self-hosted licensing |
| Frontend | Minimal /chat + DIY | Full Next.js 14 workspace out of the box |
| Conversation storage | Stateless (your problem) | PostgreSQL via Prisma on your infrastructure |
| Data model | API keys + credits + logs | 15+ entity Postgres schema (Workspaces, Presets, UsageEvents, more) |
| Folder tree | No | Infinite nested self-referential parents |
| Per-message bookmarks | No | Pins with scroll-to-highlight animation |
| Per-chat clipboard | No | Drag-reorderable saved passages, promote to Snippet |
| Cross-chat snippets | No | Tagged, folder-scoped, one-click injection to any chat |
| Model presets | Model + params per API call | Agent Library with model + temp + prompt + tier gating |
| Compare modal | No first-class | Fire one prompt at every provider side by side |
| Cost attribution | Per API key | Per user, per workspace, per chat, per model |
| Usage dashboard | Activity + spend per key | Recharts. Today / 7d / 30d / billing cycle |
| File storage | Not a product surface | Self-hosted MinIO with local-disk fallback, presigned URLs |
| Bulk folder upload | No | Replicates an entire OS folder tree transactionally |
| Custom data policies | Yes (provider trust rules) | Yes (per-provider adapter, per-workspace) |
| Team workspaces | Org + budgets at Enterprise | Multi-workspace with Owner / Admin / Member roles from day one |
| SSO | Enterprise tier | Available in Enterprise, configurable on your infrastructure |
| Deployment | SaaS API only | Self-hosted. On-prem, cloud, run as your own SaaS. You decide |
| Ownership | Vendor-owned | You own the code, the data, the deployment |
Frequently asked questions.
Can we keep using OpenRouter with Cherry?
Yes. Cherry's provider abstraction is a typed interface, and OpenRouter is a supported adapter. Your existing OpenRouter API key + credit balance can back the models you already use, while Cherry handles the workspace, conversation storage, UsageEvent logging and everything else above the model call.
Why not just use OpenRouter's /chat?
If a barebones chat covers your entire team's needs, no reason not to. The moment you need folders, per-message bookmarks, project-wide snippets, cost attribution per client, multi-workspace roles, presigned file storage or a compare modal, the /chat surface stops being enough, and building that on top of the API is a several-month engineering project. Cherry ships it deployed.
How does Cherry route models?
Cherry ships direct OpenAI + Anthropic adapters today, plus a typed provider interface that supports OpenRouter, Google, xAI, Perplexity Sonar, DeepSeek or any future provider as a single-file addition. You pick which provider each Agent Library Preset routes through. Every message names the exact model on the response.
Does Cherry replace OpenRouter's routing?
No. Cherry is workspace-first. If you want to keep OpenRouter's routing intelligence and 400+ model catalog, use it as the adapter. If you'd rather hit vendor APIs directly, use the OpenAI and Anthropic adapters that ship today. The workspace primitives work identically either way.
How is Cherry deployed?
Cherry is self-hosted. Docker Compose orchestrates nginx, the Next.js frontend, the Express backend, Postgres, Redis and MinIO. Deploy it on your own hardware for internal use, run it in your cloud or spin it up as your own SaaS product. You own the code, the data and the deployment.
What does Cherry cost?
Contact sales for pricing. Every engagement is scoped to how you plan to deploy, who your users are, which provider adapters you need lit up and what support terms fit your organization.
Ready to stop building a workspace on top of an API?
Tell us how your team uses OpenRouter today, which models you rely on and what you've had to build on top. We'll respond within one business day with an honest read on whether Cherry fits.