Skullcandy is one of the most innovative brands in the world of headphones and audio, but the company had a problem—their ecommerce platform wasn’t able to keep up.
Data had long been a key to Skullcandy’s growth, but data is only valuable when you can make use of it. “Product data, inventory data, sales order flow, fulfillment,” says Mark Hopkins, CIO—it was a lot. When Skullcandy migrated to Shopify, the company’s technical team noticed a differentiator beneath the surface. “We're real fans of their well-thought-out APIs and GraphQL environment—using that to query the database and make changes,” says Mark.
After migrating—in just 90 days—Skullcandy was able to streamline operations, enhance flexibility, and, using those APIs, unite their data systems so they could provide rapid content creation and management for their whole team.
It’s stories like these that support Shopify’s decision, first announced in October of 2024, to go all in on GraphQL APIs. And it’s already paying off: a year before the decision, we started improving GraphQL performance, and reduced the cost of queries by 75%—increasing throughput past what was even possible using REST APIs.
This result is just one example of why choosing the right API architecture is crucial for any enterprise-level business. REST has long been a trusted standard, but GraphQL offers compelling advantages—ranging from sheer site speed to functionalities that just aren’t possible with REST.
REST: The traditional approach
All APIs facilitate the access and transfer of data between systems. A client sends what’s known as an API request to an endpoint on a server (in some cases, multiple endpoints), and the server responds to that request with data.
REST stands for Representational State Transfer, and APIs using REST are typically referred to as RESTful APIs or REST APIs. REST APIs have a long history (in tech terms, at least) dating back to the early 2000s. REST APIs quickly became popular, and retained that popularity for a long time because they use HTTP methods—a standard protocol for the Internet—to communicate and transfer data.
REST APIs typically use a set of predefined endpoints, and each returns a fixed set of data. REST APIs have remained effective through the years, but in some high-performance contexts, weaknesses inherent to the structure can rise to the foreground:
- Rigidity: REST APIs rely on client requests following a fixed structure, which makes them easy to use but inefficient.
- Overfetching: REST APIs by nature always return an entire dataset, even if, for example, the client only needs to know an item’s stock and not all the metadata about the item. This leads to further inefficiency.
- Underfetching: REST APIs also tend to require numerous API calls to gather all the data the client needs from different datasets.
As a result, REST APIs can become very inefficient—one request can suffer from overfetching when the REST API returns an entire dataset including lots of unnecessary information, and underfetching if the same request is seeking a piece of data from a different dataset.
As the world embraced mobile devices and cloud computing, the inefficiencies in using REST APIs became more and more noticeable. Eventually, a company under immense pressure to increase site speed changed it for everyone.
GraphQL: A more efficient alternative
In the early 2010s, Facebook had a problem: The company had started using REST APIs, and the site was suffering from inefficiency caused by underfetching and fragility from maintaining rigid client/server relationships.
In 2012 Facebook debuted a solution: GraphQL APIs. At their simplest, GraphQL APIs solve the problems caused by REST APIs by using a query language that only fetches the data the client wants—nothing more and nothing less.
In 2015 GraphQL went open source, and now big companies including Netflix and Amazon, as well as thousands of smaller ones, regularly use GraphQL APIs.
To see why GraphQL APIs are so compelling, just look at their advantages over REST APIs:
- Single endpoint: GraphQL APIs expose a single endpoint, enabling precise data fetching that gives clients the exact data they need.
- Fewer requests: GraphQL APIs reduce the need for multiple round trips to the server, significantly reducing latency—especially at scale.
- Strongly typed: GraphQL APIs enforce a schema that ensures smooth data communication between client and server.
GraphQL has grown in popularity over the past decade because Facebook was early to a situation many companies now encounter: How can you develop complex, data-rich applications that are nonetheless fast and stable? Now, even the smallest ecommerce store and the biggest enterprise-scale commerce company face the same problem.
Six advantages of using GraphQL for enterprise commerce
The differences between GraphQL and REST might seem subtle, but APIs are foundational. Like the foundation of a home, your choice of API can provide long-term stability or cause structural issues as you build and maintain everything else. Those issues become the most noticeable and consequential at scale, and few companies face them as clearly as those operating in enterprise commerce.
1. Suited for complex data
Modern ecommerce platforms, especially ones supporting enterprise-scale operations, frequently deal with complex data models and support nuanced recommendation algorithms. As the amount of data increases, REST APIs can incur even more latency.
GraphQL APIs, because they’re built with precision and flexibility as first principles, allow enterprises to navigate these complex data models with much more accuracy and speed. For example, Tecovas, a Western-wearl retailer, needed a system that offered cutting-edge APIs. “I'm looking for systems that solve the bread and butter problems for me, but also offer extensibility, a robust set of APIs, and the ability to customize for our specific business processes,” says Tecovas CTO Kevin Harwood.
Tecovas was able to use Shopify POS as a fully integrated inventory system that, thanks to robust GraphQL APIs, keeps tight control over inventory data. Now Tecovas can enable associates to access immediate, up-to-date inventory levels when a customer asks for a particular item. The ability to maintain such fine control over data is why GraphQL is a key part of Shopify’s unified data model.
2. Reduced data transfer
With REST APIs, endpoints frequently return a fixed data set, which might be more than the client needs (overfetching). Too much data is inefficient to transfer and can create latency, even though much of the data being transferred isn’t actually necessary.
This dynamic leads to an inefficient use of bandwidth and higher overall load times. In enterprise commerce, every millisecond has an impact, and in low-connectivity areas, milliseconds can quickly turn into seconds or longer.
In contrast, GraphQL allows clients to request only the data they need. By cutting the need to transfer data unnecessarily, systems using GraphQL APIs can reduce bandwidth usage and improve performance.
3. Fewer round trips to the server
Similar to the previous point, because REST API endpoints return fixed data sets, any given data set might have less data than the client needs (underfetching). Because REST APIs can’t target precise data points like GraphQL APIs can, REST APIs often require multiple requests to fetch different data points across different datasets.
Latency and a resulting slow user experience can be significant, as REST APIs request data from numerous data sets to assemble a few data points.
In contrast, GraphQL APIs enable clients to request all required data in a single query without capturing multiple different datasets. This ability reduces the number of round trips, which means faster load times and a smoother user experience.
4. Improved developer experience
While REST APIs have the advantage of being familiar to many developers due to their long history, GraphQL APIs provide a much stronger overall developer experience. GraphQL is strongly typed and self-documenting, for example, which makes it easier for developers to reduce errors and build efficient systems. Additionally, a strongly typed schema helps developers maintain data integrity, which pays off over time.
5. GraphQL is more future-proof
APIs inevitably change over time, but REST APIs can make iteration difficult. REST APIs don’t make versioning mandatory, so errors can accumulate as data structures change. Furthermore, clients often don’t know and aren’t warned about these changes, meaning developers can often be stuck with hard-to-explain bugs that take time to diagnose.
In contrast, GraphQL APIs require API backward compatibility. Deleted fields immediately return an error message, and deprecated tags return a warning, allowing developers to stay up to date.
6. Enhanced performance
All these advantages can feel abstract, so how do they bear out with actual performance? Shopify’s Storefront API uses GraphQL, for example, which results in some of the fastest storefronts in the world. Across nearly 200,000 publicly available data points, Shopify stores render as much as 2.4 times faster, and 1.8 times faster on average, than stores on other platforms.
Shopify and GraphQL
Shopify started using GraphQL back when Facebook publicly released it. At the time, few best practices existed, and as early adopters, we learned GraphQL from the ground up. Since then, GraphQL has become much more popular and even more important to Shopify’s infrastructure—and Shopify storefronts have reaped the benefits.
In October 2024, we announced that as of April 2025 GraphQL would become the definitive API for Shopify. From April 1, 2025, all new apps submitted to the Shopify App Store will have to use GraphQL, and existing apps, which can continue to use the Admin REST API, will be marked as legacy.
Shopify has embraced GraphQL thoroughly because we see its potential reflected in the reality of the millions of storefronts we serve worldwide. Shopify’s Storefront API uses GraphQL, Shopify’s Admin APIs are available through GraphQL, and Shopify handles over one million queries per second with GraphQL implementation.
GraphQL vs. REST: The future vs. the past
REST served its purpose well, and its impact on the history of technology deserves respect. But the needs of enterprise-scale businesses have evolved dramatically since the early days of REST, and GraphQL has proven to be a better option for enterprise commerce.
The ability of GraphQL to reduce data transfer, minimize round trips to the server, handle complex data models, and enhance the developer experience makes it the ideal choice for companies looking to build high-performance, highly scalable ecommerce businesses. By using GraphQL, Shopify provides a faster, more efficient experience for both customers and developers.
To learn more about why Shopify has gone all in on GraphQL, and to hear more about the benefits of this focus for our storefronts, talk to sales.
GraphQL FAQ
Is GraphQL better than REST?
GraphQL is better than REST, especially at an enterprise level, because it reduces data transfer and round trips between servers and clients.
Why is GraphQL not popular?
GraphQL is growing in popularity every year but isn’t as popular as REST because REST has been around for decades longer.
What are the cons of GraphQL?
REST APIs are extremely standardized, which makes them simpler to learn than GraphQL. GraphQL can take longer to learn, and more work to keep up with, but the benefits are significant.
Is GraphQL better than REST in 2025?
GraphQL APIs are more efficient, precise, and easier to future-proof, making them a better choice for forward-thinking companies considering GraphQL vs. REST in 2024 and 2025.