Skip to main content
Proxy Basics

How Many Veeam Backup Proxies Do I Need? Complete 2026 Guide

7 min read

Detailed Guide: Sizing Veeam Backup Proxies for 2025

Introduction: The Role of the Backup Proxy

In the architecture of Veeam Backup & Replication, the Backup Proxy is the workhorse. It acts as the intermediary between the source infrastructure (VMware vSphere, Microsoft Hyper-V, or NAS) and the backup repository. It is responsible for retrieving data from the production environment, processing it (deduplication, compression, encryption), and sending it to the repository.

Sizing this component correctly is critical. Undersizing leads to long backup windows, while oversizing results in wasted resources and unnecessary "Task Limits" license costs.

The Core Formula: Tasks vs. Cores

Unlike standard applications that scale based on RAM or CPU clock speed, Veeam proxies scale based on Concurrent Tasks.

The "Task" Concept

A "Task" is essentially a single data stream processed by the proxy. When you add a VMware VM to a job, you can define how many disks it processes simultaneously. By default, this is often one task per VM disk (or per VM depending on your settings).

The Calculation Logic

To determine how many proxies you need, use this three-step formula:

1. Define the Window: How many concurrent VMs do you want to back up at peak time? (e.g., "I need to back up 200 VMs within this 4-hour window.") 2. Determine Total Tasks: If you process 1 disk per VM, you need 200 concurrent tasks. 3. Map to Proxies: * Max Tasks per Proxy: Veeam allows you to set a "Max concurrent tasks" limit on the proxy. * CPU Overhead Rule: A widely accepted technical rule for 2025 (especially with vSphere) is 2 tasks per physical core. This accounts for the "driver" overhead and context switching during intense I/O operations.

Real-World Example

You need to back up 300 VMs simultaneously. You decide to use 1 task per VM.

  • Total Tasks Required: 300
  • Hardware Available: You plan to use servers with 16 Physical Cores.
  • Capacity per Proxy: 16 Cores × 2 = 32 Tasks per server.
  • Proxies Needed: 300 Tasks / 32 Tasks = 9.375.
  • Result: You need 10 Backup Proxies.
  • Architecture Scenarios: VMware vs. Hyper-V

    The hypervisor type significantly changes how you should architect your proxy fleet.

    1. VMware vSphere (Hot Add)

    For VMware, the preferred deployment mode is often "Hot Add" (mounting the VM's snapshot to the proxy) or Direct SAN access.

  • Impact on Sizing: When using Hot Add, the CPU overhead on the proxy is higher because it handles the storage device drivers. This reinforces the 2:1 (Core:Task) ratio.
  • vCPU vs. pCPU: Do not assign more vCPUs to a VM-based proxy than there are physical cores available on the host. If you overcommit vCPUs on a proxy, you will see latency spikes in your backup stats.
  • 2. Microsoft Hyper-V (Remote & On-Host)

    Hyper-V proxies generally utilize "Remote" mode (using VSS over the network) or "On-Host" (running directly on the Hyper-V cluster node).

  • Impact on Sizing: Hyper-V Remote processing is less CPU-intensive on the proxy than VMware Hot Add. Administrators can often push this to 3 or 4 tasks per core, provided the network bandwidth (1Gbps/10Gbps) is sufficient.
  • The "Gateway" Bottleneck: Why More Proxies Isn't Always Better

    One common mistake in 2025 environments is adding proxies to solve a slow backup problem, only to find the backups remain slow. This is usually a Gateway bottleneck.

    Veeam architecture dictates that the Proxy writes data to the Backup Repository via a Gateway Service (which usually runs on the Repository server or Mount Server).

  • The Rule: A single Gateway component (standard Windows Server) can typically handle 350–500 Mbps of write traffic.
  • The Problem: If you have 10 proxies pushing data, they must funnel through these Gateways. If you only have one Gateway Service on the Repository, you hit a throughput ceiling before the proxies are fully utilized.
  • The Fix: If you scale beyond 3–4 proxies, you must scale out your Repository Gateway services or move to high-performance Linux Repositories (Hardened Repository) which handle I/O much more efficiently than Windows.
  • Proxy Modes and Location (WAN vs. LAN)

    Distributed Environments

    If you have a remote office (ROBO) with a slow WAN link, you must deploy a local Veeam proxy at that site.

  • Why? You cannot backup a 50GB VM over a 10Mbps WAN link. The local proxy processes the backup and sends only the incremental data to the central repository (often utilizing Veeam Fast Clone technology to save bandwidth).
  • Cloud Proxies

    For Veeam Backup for Microsoft Office 365 or AWS/Azure agents, you use Cloud Proxies.

  • Sizing: Since these are throttled by internet speed and API limits, you typically need fewer proxies. A single large Cloud Proxy often suffices for hundreds of users, unless you are performing a massive initial historical import.
  • Automation: Calculating Proxy Requirements with Python

    For experts managing massive environments, manual calculation is prone to error. We can use Python to calculate the infrastructure requirements based on the Veeam "Max Tasks" logic.

    Here is a script snippet to estimate proxy requirements:

    import math
    

    def calculate_proxies(total_vms, disks_per_vm=1, target_hours=4, cores_per_server=16): """ Estimates the number of Veeam proxies needed based on workload.

    Args: total_vms (int): Total number of Virtual Machines to backup. disks_per_vm (int): Average disks per VM (Tasks per VM). target_hours (int): The backup window in hours. cores_per_server (int): Physical cores available per proxy server. """

    # Assume a simple load where we want to finish in X hours # This is a simplified logic ignoring job chaining total_tasks = total_vms * disks_per_vm

    # Veeam Best Practice for VMware: 2 Tasks per Core (Conservative) tasks_per_core = 2 tasks_per_proxy = cores_per_server * tasks_per_core

    proxies_needed = math.ceil(total_tasks / tasks_per_proxy)

    print(f"--- Veeam Proxy Sizing Estimate ---") print(f"Total VMs: {total_vms}") print(f"Total Concurrent Tasks Required: {total_tasks}") print(f"Cores per Proxy Server: {cores_per_server}") print(f"Capacity per Proxy (2 tasks/core): {tasks_per_proxy} Tasks") print(f"RECOMMENDED PROXY COUNT: {proxies_needed}") return proxies_needed

    Example Usage for a Medium Enterprise

    400 VMs, 1 disk each, 16 core servers

    calculate_proxies(total_vms=400, cores_per_server=16)

    Scaling the Repository (The Scale-Out Backup Repository - SOBR)

    When you add multiple proxies, you should utilize a Scale-Out Backup Repository (SOBR).

  • Per-VM Backup Files: This setting (enabled on the repository) is critical when using multiple proxies. It allows different proxies to write different blocks of the same backup chain to different underlying extents. Without this, if you have 5 proxies, they might fight to write to the same file, causing locking contention on the file system (especially NTFS).

Summary Checklist for 2025

1. Identify Task Count: Check your Veeam statistics for "Concurrent Tasks" during the peak window. 2. Apply Ratio: * VMware: 2 tasks per core. * Hyper-V: 3 tasks per core. 3. Verify Gateway: Ensure your Repository Gateway can handle the throughput of N proxies. 4. Enable Per-VM: Always use "Per-VM backup files" when scaling out proxies. 5. Monitor: Use Veeam's "Task Session" log to look for "Waiting for free proxy instance" errors—if you see this, you need more proxies.

By following these technical baselines, you ensure that your data protection strategy is neither over-provisioned (wasting CAPEX) nor under-provisioned (risking RPO failures).

Share: