> For the complete MongoDB documentation index, see www.mongodb.com/docs/llms.txt

# Data Transfer Costs

Atlas tabulates data transfer costs daily. Pricing varies by cloud provider and by the region of the source and destination nodes. This page describes sources of data transfer costs, pricing by provider, and strategies to reduce costs.

Select your cloud provider to view the applicable data transfer costs.

## Sources of Data Transfer Costs

Atlas charges for data transfer between your Atlas node and another node. The following transfers incur costs, listed in order of lowest cost to highest:

1. Data transfer using in-region VNet peering.

2. Data transfer to a different region. Data transfer charges for an Atlas cluster depend on the geographic location of the source node.

3. Data transfer using cross-region VNet peering.

### Transfer Cost Exceptions and Behavior

Azure (Microsoft Azure) charges for virtual network traffic, including ingress and egress data transfers between virtual networks, such as in Virtual Network Peering scenarios. For more details, refer to [Azure Virtual Network pricing.](https://azure.microsoft.com/en-us/pricing/details/virtual-network/#pricing)

### Azure (Microsoft Azure) Data Transfer Costs

Data transfer costs for Atlas deployments running on Azure (Microsoft Azure).

| Data Transfer Type | Price per GB |
| --- | --- |
| Data Transfer | $0.087 to $0.181 |
| VNET Data Transfer (Same Region) | $0.01 |
| Global VNET Peering Data Transfer | $0.035 to $0.16 |
| Inter Region Intra-continental Data Transfer | $0.02 to $0.16 |
| Inter Region Inter-continental Data Transfer | $0.02 to $0.16 |

1. Data transfer in the same AWS (Amazon Web Services) region.

2. Data transfer between different AWS (Amazon Web Services) regions.

3. Data transfer to a location outside of an AWS (Amazon Web Services) region, excluding incoming transfers to the Atlas node.

### Cloud Backup Snapshot Export

Atlas charges `$0.125` per GB of data exported to the AWS (Amazon Web Services) S3 (Simple Storage Service) bucket, Azure Blob Storage Container, or Google Cloud Storage bucket in addition to the data transfer cost incurred from the cloud service itself. Atlas compresses the data before exporting. To estimate the amount of data being exported, add up the [dataSize](https://www.mongodb.com/docs/manual/reference/command/dbStats/#mongodb-data-dbStats.dataSize) of each database in your cluster. This total should correspond to the uncompressed size of your export, which would be the maximum cost incurred from Atlas for the data export operation.

To learn more about cloud backup snapshot export, see [Export Cloud Backup Snapshots to Object Storage.](https://www.mongodb.com/docs/atlas/backup/cloud-backup/export.md#std-label-cloud-provider-snapshot-export)

### Transfer Cost Exceptions and Behavior

Atlas doesn't charge for incoming data transfers to an Atlas cluster. Additionally, Atlas doesn't charge Free clusters (formerly known as `M0`) or Flex cluster tiers for outgoing data.

For AWS (Amazon Web Services) clusters deployed outside of the North America region where the Atlas Control Plane is located, invoices will include an `AWS Data Transfer (different region)` item that results from the inherited network traffic, such as heartbeats, the automation agent, the Performance Advisor, and log sink exports, sent between the AWS (Amazon Web Services) North America region with the Atlas control plane, and the AWS (Amazon Web Services) region where the clusters are deployed.

If you connect to your clusters through private endpoints, invoices might also include an `Atlas AWS Data Transfer (Same
        Region)` item without a cluster name. One source of this item is the traffic that the AWS (Amazon Web Services) Network Load Balancer transfers between availability zones. To learn more, see [Atlas AWS Data Transfer (Same Region).](https://www.mongodb.com/docs/atlas/billing/additional-services.md#std-label-privatelink-billing-data-transfer)

### AWS (Amazon Web Services) Data Transfer Costs

Data transfer costs for Atlas deployments running on AWS (Amazon Web Services).

| Data Transfer Type | Price per GB |
| --- | --- |
| Same Region | $0.00 to $0.01 |
| Different Region | $0.02 to $0.15 |
| Out to Internet | $0.09 to $0.16 |

1. Data transfer between zones in the same region.

2. Data transfer between regions in the United States of America.

3. Data transfer between continents.

4. Data transfer between regions in the same continent other than the United States of America.

5. Data transfer to a location outside of a Google Cloud data center, excluding incoming transfers to the Atlas node.

### Transfer Cost Exceptions and Behavior

Atlas doesn't charge for incoming data transfers to an Atlas cluster. Additionally, Atlas doesn't charge Free clusters or Flex cluster tiers for outgoing data.

### Google Cloud Data Transfer Costs

Data transfer costs for Atlas deployments running on Google Cloud.

| Data Transfer Type | Price per GB |
| --- | --- |
| Data Transfer (Internet) | $0.12 to $0.23 |
| Data Transfer (Interconnect) | $0.12 to $0.23 |
| Data Transfer (between zones in the same region) | $0.01 to $0.15 |
| Data Transfer (between regions) | $0.02 to $0.15 |

### Clusters

Multi-region clusters might have higher data transfer costs depending on the number and location of additional regions, as well as the number of clusters deployed to each region.

### Push-based Log Exports

[Push Logs to AWS S3](https://www.mongodb.com/docs/atlas/push-logs.md#std-label-mongodb-logs-push) exports logs directly from the data node to an S3 bucket in the cluster's region. Standard Internet egress costs apply.

[Export Logs to External Services](https://www.mongodb.com/docs/atlas/export-logs.md#std-label-export-logs) routes log traffic through the Atlas control plane in AWS (Amazon Web Services) `us-east-1`, regardless of your cluster's region or cloud provider. If your cluster is not in AWS (Amazon Web Services) `us-east-1`, you incur cross-region or inter-cloud data transfer charges in addition to Internet egress costs.

### Additional Data Transfer Usage

While application traffic drives the majority of your costs, essential platform operations contribute small amounts of additional data transfer to your aggregate billing. These background processes ensure the health, security, and performance of your deployment.

The underlying cloud provider bills this traffic as part of the total network usage required to maintain your managed service.

## Live Migrate Your Data to Atlas

MongoDB hosts and operates the free Atlas Live Migration Service to help you migrate existing MongoDB databases to MongoDB Atlas. MongoDB doesn't charge for any incoming data transfers to an Atlas cluster. [Learn more](https://www.mongodb.com/cloud/atlas/migrate?tck=docs) about migrating to Atlas.

## How to Reduce Data Transfer Costs

The vast majority of Atlas customers spend less than 10% of their budget on data transfer. If you are spending significantly more, some of these optimizations may reduce your data transfer costs:

- Check all applications and processes that access your data for inefficiencies. Ensure that queries do not:

  - Re-read data that already exists on the client.

  - Re-write existing data to your cluster.

- Ensure that queries originate from the same cloud region and provider as your cluster whenever possible.

  When cross-region queries are necessary:

  - Ensure read queries [use the preference "nearest."](https://www.mongodb.com/docs/manual/core/read-preference/)

  - Source write queries from your Highest Priority Region whenever possible. For more information on region priorities, see [Electable Nodes for High Availability.](https://www.mongodb.com/docs/atlas/cluster-config/multi-cloud-distribution.md#std-label-deploy-across-multiple-regions)

- Perform query operations with [projection](https://www.mongodb.com/docs/manual/tutorial/project-fields-from-query-results/#project-fields-to-return-from-query) to specify or restrict the fields that MongoDB returns in matching documents, thereby limiting the amount of data that MongoDB sends to applications. Alternatively, project document fields using the [`$project`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/project.md#mongodb-pipeline-pipe.-project) aggregation stage from the [Aggregation Framework](https://www.mongodb.com/docs/manual/aggregation/) to reduce the size of a document before you transfer it.

- Enable network compression in your client driver to compress data between the client and the server. As an example, you can configure the [network compression](https://www.mongodb.com/docs/drivers/node/current/fundamentals/connection/network-compression/) option for your Node.js driver. Atlas always compresses intra-cluster communication. To learn more, see the [Driver's Documentation.](https://www.mongodb.com/docs/drivers/)

**Note:**

Queries from on-premises environments into Atlas, across cloud providers, or between continents on the same cloud provider incur the greatest data transfer costs.
