What do Apollo GraphOS and WunderGraph Cosmo have in common?
Both Apollo GraphOS and WunderGraph Cosmo implement GraphQL Federation using the Federation Specification.
They support many of the same federation directives, such as @key
, @external
, @requires
, and @override
. These directives define how your services fit together.
Beyond compatibility, the developer workflows are similar, with support for schema changes, CI integration, observability, and router orchestration.
Where they begin to diverge is in control and flexibility.
What are the differences between Apollo GraphOS and WunderGraph Cosmo?
The biggest difference lies in architecture and philosophy. Cosmo is 100% open source under the Apache 2.0 license and can be self hosted anywhere. Apollo GraphOS is a SaaS platform built around a hosted model. The Apollo Router is source available under the Elastic License 2.0 (ELv2). This means the code is accessible and can be modified. However, ELv2 is not an open source license. It places limits on how the software can be used, especially in commercial or competitive products. The rest of the Apollo stack, including the schema registry, Apollo Studio, and analytics, is fully managed and proprietary.
Most GraphQL federation platforms rely on a set of core services. These typically include a schema registry for managing and composing subgraphs, a router to plan and execute queries across services, a user interface for graph visibility and collaboration, and a command line tool to support local development, CI workflows, and automation.

WunderGraph Cosmo expands on those core services with a modular, open setup:
- Router config delivery through a globally distributed CDN (your choice of Cloudflare, AWS, or custom).
- SSO and identity federation via Keycloak (supports OIDC and SCIM).
- Monitoring and observability powered by OpenTelemetry, Prometheus, and ClickHouse.

Advantages of Open Source and Infrastructure Flexibility
Cosmo’s architecture is built for teams that want deep visibility into their infrastructure.
You can run the Cosmo Router in your own environment to maintain control over network boundaries, performance, and security. This level of control is paramount in systems where compliance or low latency is a priority. Paired with Cosmo Studio, you get detailed observability and query plan insights without relying on an external cloud provider.
Getting started is straightforward. You can use Docker Compose to spin up the stack locally, or use the managed service by signing up for Cosmo Cloud. Cosmo integrates into existing CI workflows, which makes it easy to go from local testing to production deployment.
Is there a difference in how Apollo and WunderGraph handle GraphQL Federation?
Both platforms implement the Federation Specification and support the same core directives. From a developer’s perspective, they behave similarly. Subgraphs can typically be used with either router without any modification.
The main differences are under the hood: how routers plan and execute queries, how routing is extended, and how configuration is handled. Cosmo uses Go and offers plugin support while Apollo uses Rust and provides more limited extension options.
How does Cosmo Router compare to Apollo Router & Apollo Gateway?
Apollo Gateway, Apollo Router, and Cosmo Router are all responsible for routing and executing queries in a federated GraphQL API.
Apollo Gateway, written in Node.js, supports Federation v1 but has known performance limitations. Its Rust-based successor, Apollo Router, offers improved speed and support for Federation v2 under the Elastic License.
Cosmo Router is written in Go and fully open source under the Apache 2.0 license. It supports the latest Federation v2 features and emphasizes transparency, performance, and extensibility.
Router Performance and Benchmarking
If you're comparing Cosmo Router and Apollo Router head-to-head, it's worth focusing on how they behave in real-world conditions and not just synthetic benchmarks or warm-cache scenarios.
Cosmo Router is built to minimize overhead and maximize throughput in production environments. Key performance factors include:
- HTTP server behavior
- Query parsing, normalization, validation, and planning
- Execution plan shape and caching
- Subgraph response merging and serialization
- Observability and telemetry overhead
To go deeper, Cosmo includes:
- Dataloader 3.0 — a breadth-first batching strategy that reduces memory pressure while maintaining throughput
- AST-JSON — an efficient way to merge and serialize subgraph responses without unnecessary allocations
- Advanced Request Tracing (ART) — visual tracing of how each query flows through the system
Planning speed matters too. Cosmo's query planner is optimized to run in under a millisecond. But with GraphQL's flexibility, some queries will naturally take longer to plan. In those cases, Cosmo uses a cache warming strategy to prepare execution plans ahead of time so the router is always ready when traffic hits.

If you're evaluating routing performance and want to see internal benchmarks or walkthroughs, reach out to our team.
How does Cosmo Studio compare to Apollo Studio?
Both Cosmo Studio and Apollo Studio provide a visual interface for managing a federated GraphQL API. You can explore schemas, inspect query plans, monitor usage, and evolve your graph safely over time.
The real difference is in what each platform lets you see and do.
Cosmo Studio gives teams full visibility and control. It works the same whether you use the managed platform or are running it in your own infrastructure. Features like advanced request tracing, environment isolation through namespaces, and fine grained graph access controls are included. Teams can also assign subgraph ownership using role based permissions to support safe collaboration across services.
Apollo Studio offers a streamlined experience, but it only runs in Apollo's cloud. There is no way to extend it or customize it beyond what is provided out of the box.
With Cosmo, you are not just operating a router. You are gaining insight into how your entire graph is behaving. Cosmo Studio gives you the tools to understand and manage your own architecture.
Apollo GraphOS Enterprise vs WunderGraph Cosmo Open Source vs WunderGraph Cosmo Enterprise
While both platforms support GraphQL Federation at scale, the way they package and deliver features differs significantly, especially when it comes to self hosting, licensing, and flexibility.
Apollo separates functionality across multiple components. The Apollo Router is licensed under ELv2, which allows source access but imposes restrictions on commercial usage. GraphOS Studio is available only as a managed SaaS offering, and many of the enterprise features, advanced analytics, schema contracts, and access controls, for example, are exclusive to higher pricing tiers.
Cosmo, by contrast, provides the same functionality across both open source and managed deployments. There is no enterprise edition. Everything is developed in the open and available without feature gating.
The table below outlines how the platforms compare across key capabilities and deployment models.
Apollo Router Elastic License | Apollo GraphOS Enterprise | WunderGraph Cosmo Open Source | WunderGraph Cosmo Cloud | |
---|---|---|---|---|
Self hosted Router | ✓ | ✓ | ✓ | ✓ |
GraphQL Subscriptions | ❌ | ✓ | ✓ | ✓ |
Authentication (JWT) | ❌ | ✓ | ✓ | ✓ |
Authorization Directives | ❌ | ✓ | ✓ | ✓ |
Progressive Override | ❌ | ✓ | ✓ | ✓ |
Query Plan Caching | ✓ | ✓ | ✓ | ✓ |
External Coprocessing | ❌ | ✓ | ✓ | ✓ |
Operation Limits & Safelisting | ❌ | ✓ | ✓ | ✓ |
Custom telemetry attributes & spans | ✓ | ✓ | ✓ | ✓ |
Offline "Enterprise" license | ❌ | ✓ | ✓ | ✓ |
Schema Filtering (contracts) | ❌ | ✓ | ✓ | ✓ |
SSO (Okta, Azure AD) | - | ✓ | ✓ | ✓ |
Datadog Integration | - | ✓ | ✓ | ✓ |
Build status notifications | ✓ | ✓ | ✓ | ✓ |
Open Telemetry (OTEL) | ✓ | ✓ | ✓ | ✓ |
SCIM | ✓ | ✓ | ✓ | ✓ |
Subgraph Ownership (RBAC) | - | ❌ | ✓ | ✓ |
Event-Driven Federated Subscriptions (EDFS) | ❌ | ❌ | ✓ | ✓ |
Cache Warming | ❌ | ❌ | ✓ | ✓ |
Billion Requests Analytics Pipeline | - | ✓ | ❌ | ✓ |
The open source version of Cosmo includes a simple, self hostable analytics pipeline. For large-scale workloads, Cosmo Cloud uses a more advanced implementation—built on Kafka, ClickHouse, and ClickPipes—to support billions of requests per day. This setup isn’t included in the open source repo, as it’s tailored specifically for managed infrastructure and operational scale.
The Benefits of Cosmo Cloud
Cosmo Cloud is a managed platform built on the same open source components as Cosmo OSS, designed to be secure, reliable, and globally scalable.
Router configuration is served via a global CDN for low-latency updates, while key services—like the schema registry and observability stack—are replicated across multiple availability zones for durability and performance.
At higher volumes, analytics and usage metrics become critical. Cosmo Cloud includes a purpose-built telemetry pipeline based on Kafka, ClickHouse, and ClickPipes. It’s designed to handle billions of requests per day and power features like schema usage tracking, breaking change detection, and historical insights.

For a closer look at how the system works behind the scenes, read our post on scaling GraphQL schema usage to billions of requests per day.
Why is there no Enterprise Version of Cosmo?
We’ve kept Cosmo as a single, unified codebase for one reason: it helps us move faster, stay transparent, and build a better product for everyone.
We don’t split features between open source and enterprise tiers. That means no feature gating, no internal forks, and no guesswork about what you can or can’t do with the platform. Everything is developed in the open, tested together, and released together.
Velocity is another reason. With a monorepo and a shared pipeline, we can make changes across the stack in one pull request and ship confidently. We even publish pre-release Docker images with every update so you can try things early and give feedback.
We also believe open collaboration leads to stronger design. That’s why we run open RFC discussions on GitHub and welcome input from teams using Cosmo in production.
Security, too, benefits from openness. The code is auditable. The issues are public. There’s no hidden behavior or black-box implementation.
Instead of creating an “Enterprise Edition,” we provide enterprise-level support, contracts, and SLAs on top of the exact same open platform that anyone can use. It’s simpler, more sustainable—and much easier to grow with.
Managed vs Self-Hosted: Apollo GraphOS vs Cosmo
Apollo GraphOS Enterprise offers a fully managed experience for building and operating a federated GraphQL API. It includes a hosted schema registry, Studio, and Router—all maintained within Apollo’s infrastructure. If you require more control, Apollo does support running their Router in your own environment.
WunderGraph Cosmo takes a different approach. Rather than hosting the Router for you, Cosmo is designed to integrate into your infrastructure, whether you're running in the cloud, on-premises, or in a hybrid setup.
Many teams prefer this level of control. Running the Router yourself means you decide where and how it’s deployed—close to your subgraphs, compliant with your policies, and scaled on your terms.
Cosmo does not include a hosted Router service as part of the platform. Instead, it provides open tooling and support so you can run the Router in your own infrastructure, wherever it makes the most sense for your use case. This allows us to focus on building features, performance, and long term flexibility across the entire Cosmo stack, without adding infrastructure overhead or gating functionality.
What are the ideal use cases for choosing WunderGraph Cosmo?
WunderGraph Cosmo is built to support a wide range of deployment strategies, from lightweight setups to fully managed enterprise environments.
Your startup or small team can run the Router in your own environment while using the managed schema registry and Studio. There are no feature gates. Single sign on, SCIM, and advanced observability are available from the beginning.
For hybrid enterprise environments, Cosmo Cloud provides a managed control plane with support for service level agreements, compliance, and collaboration at scale. At the same time, teams can run key services like the Router in their own infrastructure, maintaining control over performance, security, and deployment.
Whether you're experimenting with federation or standardizing it at scale, Cosmo provides the tooling and flexibility to fit your setup—without locking you into one model.
Next Steps - Try WunderGraph Cosmo now or book a meeting
If you're interested in trying out WunderGraph Cosmo, you can sign up for a free account on Cosmo Cloud, or clone the GitHub repo and run it locally.
If you've got more advanced requirements and are ready to talk to us, please book a meeting.