# Choosing the Right Throughput Mode for Amazon EFS: A Performance Guide

When using **Amazon Elastic File System (EFS)**, selecting the right throughput mode is critical to balancing performance needs with cost efficiency. EFS offers three modes: Elastic Throughput (Default), Bursting Throughput, and Provisioned Throughput. Let's break down how they work and when to use each.

Here are the <mark>Performance Settings</mark> Options when Selecting Amazon EFS File system’s Throughput mode. (Image below)

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1738818902666/9c4e3459-2e2a-4010-a21c-6930704fc460.png align="center")

## **<mark>Elastic Throughput Mode</mark> (Default and AWS Recommended)**

## **How It Works**

* Automatically scales throughput performance up or down to meet workload needs
    
* No need to specify or provision throughput capacity
    
* Pay only for the amount of metadata and data read or written
    
* No accrual or consumption of burst credits
    

## **Best For**

* Spiky or unpredictable workloads
    
* Performance requirements that are difficult to forecast
    
* Applications that drive throughput at an average-to-peak ratio of 5% or less
    

## **Considerations**

* Available only for file systems using General Purpose performance mode
    
* Simplifies management by eliminating the need for manual throughput adjustments
    

## **<mark>Bursting Throughput Mode</mark>**

## **How It Works**

* Baseline Throughput: Scales with storage size (50 KiB/s per GiB of data stored)
    
* Burst Capability: Accumulate credits when below baseline, allowing temporary higher throughput
    

## **Best For**

* Variable workloads with occasional traffic spikes
    
* Cost-efficient option for workloads not requiring sustained high throughput
    

## **Considerations**

* Monitor burst credits via Amazon CloudWatch (BurstCreditBalance)
    
* Larger file systems (&gt;1 TiB) can sustain longer bursts
    

## **<mark>Provisioned Throughput Mode</mark>**

## **How It Works**

* Manually define throughput (MiB/s) independent of storage size
    
* Pay for storage fees + hourly charges for provisioned throughput
    

## **Best For**

* Steady, high-throughput needs
    
* Predictable workloads requiring consistently high performance
    

## **Considerations**

* Use when baseline bursting limits are insufficient
    
* Adjust provisioned throughput as needs change
    

## **Key Differences**

| **Factor** | **Elastic Throughput** | **Bursting Throughput** | **Provisioned Throughput** |
| --- | --- | --- | --- |
| Cost Model | Pay for read/write operations | Included with storage | Storage + hourly throughput fees |
| Performance | Automatically scales | Scales with storage size | Fixed, user-defined |
| Workload Type | Spiky/unpredictable | Variable with occasional spikes | Steady, high-demand |
| Complexity | Lowest (AWS manages scaling) | Low (AWS manages bursting) | Requires monitoring and adjustments |

## **How to Choose**

1. Start with Elastic Throughput if:
    
    * Your workload is unpredictable or spiky
        
    * You want simplified management and cost optimization
        
2. Consider Bursting Throughput if:
    
    * You have variable workloads with occasional spikes
        
    * Cost savings are a priority over guaranteed throughput
        
3. Switch to Provisioned Throughput if:
    
    * You need guaranteed throughput for latency-sensitive tasks
        
    * Your workload consistently requires high throughput
        
    

By aligning your EFS throughput mode with your application's needs, you can optimize both performance and costs.

Here's a summary of the key points:

1. Elastic Throughput: Recommended for most workloads, especially those with unpredictable or spiky performance requirements.
    
2. Bursting Throughput: Suitable for variable workloads with occasional traffic spikes, offering a balance between cost and performance.
    
3. Provisioned Throughput: Ideal for steady, high-throughput needs and predictable workloads requiring consistently high performance.
    

## **Final Tips**

* Utilize Amazon CloudWatch metrics to monitor your file system's performance, including throughput usage and, if applicable, burst credit balance.
    
* During development, test different throughput modes to compare cost-effectiveness and performance for your specific workload[1](https://aws.amazon.com/blogs/storage/performance-analysis-for-different-amazon-efs-throughput-modes-via-amazon-cloudwatch/).
    
* Keep in mind that you can switch between throughput modes, but there's a 24-hour waiting period before making another change.
    
* For most use cases, start with Elastic Throughput as it automatically scales to meet workload needs without manual intervention.
    
* If you're unsure about your application's peak throughput requirements or have very spiky workloads, Elastic Throughput is often the best choice.
    
* Consider using Provisioned Throughput when you have a clear understanding of your workload's performance needs and require guaranteed throughput.
    

By carefully considering these factors and leveraging the appropriate throughput mode, you can ensure that your Amazon EFS file system delivers optimal performance while maintaining cost efficiency for your specific use case.  
  
Adapted from the Amazon EFS Performance Guide: [https://docs.aws.amazon.com/efs/latest/ug/performance.html](https://docs.aws.amazon.com/efs/latest/ug/performance.html)

Hope you have enjoyed the Blog. Thank you for Reading.

Happy Learning.

Like and Follow for more Azure and AWS Content.

Thank you,  
[**Jineshkumar Patel**](https://jineshkumar.bio.link/)
