# Unscoped or Over-Frequent Snowflake Database Replication

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/unscoped-or-over-frequent-snowflake-database-replication

Snowflake replication and failover groups copy databases and other objects from a primary account to secondary accounts, usually in another region or...

By: PointFive

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

The short version

Snowflake replication and failover groups copy databases and other objects from a primary account to secondary accounts, usually in another region or cloud, and refresh them on a schedule.

PointFive Research

Cloud cost research at PointFive

Snowflake service

[Snowflake Replication](https://www.pointfive.co/efficiency-hub/cloud-services/snowflake-replication)

Category

[Networking](https://www.pointfive.co/efficiency-hub/service-category/networking)

Reference

CER-0517

Type

Inefficient Configuration

## Explanation

Why the waste happens and who it affects.

Every refresh finds the changed data, copies it across regions and bills the target account for both the data transfer and the replication compute, while the secondary databases add a second full copy of storage. Snowflake states that the monthly bill depends on how much table data changes and how often secondaries are refreshed.

Waste appears when groups are scoped more broadly than the recovery or data-sharing need: every database in an account added to one failover group, staging, scratch or high-churn ETL databases replicated alongside the few that actually need DR, or a REPLICATION\_SCHEDULE of a few minutes applied to data whose recovery point objective is hours or a day. Groups set up for a migration, a proof of concept or a consumer that has since moved on also keep refreshing, because nothing stops a schedule until someone suspends or drops the secondary group.

## Billing model

The pricing dimensions that drive this cost.

Replication charges are billed on the target account, the one that holds the secondary group being refreshed.

Replication data transfer

Cross-region or cross-cloud transfer of the initial copy and every subsequent refresh, at rates that depend on the source account's region and cloud

Replication compute

Snowflake-provided compute for finding metadata and data deltas and copying them, shown with service type REPLICATION in usage views

Optimized refresh

For eligible failover groups, billed at 5 credits per TB replicated plus 0.2 credits per 10,000 changed objects beyond 25 million per month, instead of compute time

Secondary storage

Standard storage for the secondary databases in the target account, plus any background maintenance for materialized views and search optimization there

## How to detect

5 checks to find it in your estate.

- In each target account, query SNOWFLAKE.ACCOUNT\_USAGE.REPLICATION\_GROUP\_USAGE\_HISTORY (hourly CREDITS\_USED and BYTES\_TRANSFERRED per secondary group, 365 days) to rank groups by replication cost

- Use DATABASE\_REPLICATION\_USAGE\_HISTORY to see which individual databases account for most of the transferred bytes and credits

- Run SHOW REPLICATION GROUPS and SHOW FAILOVER GROUPS and review replication\_schedule, object\_types and secondary\_state; flag schedules measured in minutes on groups whose recovery point objective is much longer

- List the databases in each group with SHOW DATABASES IN REPLICATION GROUP (or FAILOVER GROUP) and flag scratch, staging, sandbox and intermediate ETL databases that have no DR or cross-region consumer

- Check QUERY\_HISTORY or ACCESS\_HISTORY in the target account for reads of replicated databases that exist for data sharing or reporting rather than failover, and flag secondaries that nobody queries

## How to fix

5 ways to remove the waste.

- Narrow each group to the databases and object types that actually need a secondary copy, using ALTER REPLICATION GROUP ... REMOVE \<db\> FROM ALLOWED\_DATABASES; a database removed from the primary group is dropped in linked target accounts at the next refresh unless the secondary group is dropped first, which leaves standalone read-write copies

- Move databases with different recovery needs into separate groups so critical data can keep a short schedule while the rest refreshes hourly or daily

- Lengthen REPLICATION\_SCHEDULE (an interval in minutes, up to 11,520, or a CRON expression) to match the recovery point objective, so fewer refreshes run and each one's delta-detection compute is spread over more changes

- Suspend scheduled refreshes on secondary groups that are temporarily not needed with ALTER REPLICATION GROUP ... SUSPEND, and drop secondary groups and databases that no longer serve a purpose; Snowflake notes that ceasing refresh operations stops replication costs

- Reduce churn in replicated databases where possible, for example by keeping transient staging tables and frequently rebuilt intermediate tables in a database outside the replication group

## Documentation

Vendor references for pricing and configuration.

- [Understanding replication cost  docs.snowflake.com](https://docs.snowflake.com/en/user-guide/account-replication-cost)

- [REPLICATION\_GROUP\_USAGE\_HISTORY view  docs.snowflake.com](https://docs.snowflake.com/en/sql-reference/account-usage/replication_group_usage_history)

- [ALTER REPLICATION GROUP  docs.snowflake.com](https://docs.snowflake.com/en/sql-reference/sql/alter-replication-group)

- [SHOW REPLICATION GROUPS  docs.snowflake.com](https://docs.snowflake.com/en/sql-reference/sql/show-replication-groups)

- [Snowflake Service Consumption Table  snowflake.com](https://www.snowflake.com/legal-files/CreditConsumptionTable.pdf)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- GCP Cloud NAT  CER-0331

### [Excessive Data Processing Fees on High-Throughput Cloud NAT Gateways](https://www.pointfive.co/efficiency-hub/inefficiencies/excessive-data-processing-fees-on-high-throughput-cloud-nat-gateways)

Cloud NAT charges a per-GiB data processing fee on all traffic routed through the gateway - both inbound responses and outbound requests. For high-throughput workloads such as web crawlers, data pipelines, container image pulls, and...

Networking

- Azure Load Balancer  CER-0223

### [Suboptimal Load Balancer Rule Configuration in Azure Standard Load Balancer](https://www.pointfive.co/efficiency-hub/inefficiencies/suboptimal-load-balancer-rule-configuration-in-azure-standard-load-balancer)

As organizations migrate from the Basic to the Standard tier of Azure Load Balancer (driven by Microsoft's retirement of the Basic tier), they may unknowingly inherit cost structures they didn't previously face. Specifically, each load...

Networking

- AWS S3  CER-0161

### [Missing S3 Gateway Endpoint for Intra-Region EC2 Access](https://www.pointfive.co/efficiency-hub/inefficiencies/missing-s3-gateway-endpoint-for-intra-region-ec2-access)

When EC2 instances in private subnets access Amazon S3 in the same region without a Gateway VPC Endpoint, traffic is routed through a NAT Gateway to the public S3 endpoint. Data transfer from S3 to EC2 in the same region is free, but every...

Networking

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

