Microsoft Fabric Updates Blog

Microsoft Fabric’s API for GraphQL: best practices for performance

Microsoft Fabric’s API for GraphQL offers a powerful way to query data efficiently, but performance optimization is key to ensuring smooth and scalable applications. In this blog, we’ll explore best practices to maximize the efficiency of your Fabric’s API for GraphQL. Whether you’re handling complex queries or optimizing response times, these strategies will help you get the best performance out of your GraphQL implementation.

Region

Cross-region calls are generally causing higher latencies, in order to achieve the best performance, it is recommended to have your tenant region, capacity region and client physical location in the same region.

Follow the steps to verify your region-related information:

Tenant region

  1. Go to the Microsoft Fabric portal with an admin account and click on the highlighted icons to get the tenant region information.
Fig 1 – The tenant region is in the West Central US

Capacity region

  1. Go to Microsoft Fabric portal, open the workspace which hosts your Fabric’s API for GraphQL.
  2. Go to license information.
Fig 2 – The capacity region is the West Central US

Data source region

  1. If your data source is hosted on Fabric platform, the workspace’s capacity region would be the data source region.
  2. If your data source is outside Fabric platform, example like Azure SQL DB, you should be able to find the regional information from the original data source provider.

Performance testing

For customers evaluating the performance, we recommend adhering to the following guidelines to ensure accurate and reliable results.

Client-side tools

To emulate the closet behavior to your actual application, it is recommended to use scripts or demo web applications to perform the testing to measure the performance, also utilize http connection pooling can greatly reduce the latencies especially for cross-region scenarios.

We have a sample performance test script that can help you get started quickly.

Related topics

Data Collection & Evaluation

It is advisable to automate request execution over a defined time period using scripts or performance testing tools. Analyzing the average or percentile-based results will help ensure more accurate and unbiased performance measurements.

Common issues

Here is list of common issues that can impact latency and performance.

  1. Your client geo-location is different from your tenant and capacity region.
    • As mentioned in our best practices, if you intend to score the best performance for your application, having them in the same region would achieve the goal.
  2. Query the API for GraphQL for the 1st time.
    • API for GraphQL has internal caching mechanisms to help reduce latencies for continuous calls, however you might face latency spikes for the initial calls.
    • Besides the API, certain data sources are known to undergo a warm-up phase, which will result in higher latencies for initial requests. When querying such data sources through the API, similar performance challenges may be encountered.
  3. Data source and fabric capacity related setup.
    • You can think of API for GraphQL as a wrapper on top of your data sources. If your data source itself has performance issues due to the nature of its complexity, it is expected that API latencies can be high. When such cases happen, it is recommended to test querying your data sources directly for a more effective performance comparison with that of API for GraphQL.
    • When utilizing API for GraphQL, performance is going to be bound by the Fabric capacity SKU you have selected.

Conclusion

Several factors can impact the performance of your API for GraphQL. Understanding your data source setup, selecting the right regions, and effectively measuring performance are crucial for optimization. We will continue updating this blog with the latest recommendations to help you achieve the best possible performance for your Microsoft Fabric API for GraphQL.

Refer to our public documentation to learn more: Microsoft Fabric API for GraphQL overview

Related blog posts

Microsoft Fabric’s API for GraphQL: best practices for performance

May 22, 2025 by Eren Orbey

With AI-powered capabilities in Data Wrangler, you can now do even more to accelerate exploratory analysis and data preparation in Fabric.

May 19, 2025 by Santhosh Kumar Ravindran

The Fabric Spark Native Execution Engine (NEE) is now generally available (GA) as part of Fabric Runtime 1.3. This C++-based vectorized engine (built on Apache Gluten and Velox) runs Spark workloads directly on the lakehouse, requiring no code changes or new libraries. It supports Spark 3.5 APIs and both Parquet and Delta Lake formats, so … Continue reading “Microsoft Fabric Spark: Native Execution Engine now generally available”