RDS Server Sizing Calculator for Session Hosts

June 4, 2026

RDS Server Sizing Calculator

Estimate Remote Desktop Services session-host count, per-host vCPU, memory, profile storage, IOPS, and N+1 spare capacity for home labs, small offices, classrooms, app farms, and hybrid virtual desktop deployments.

🖥RDS Deployment Presets
Session Host Inputs
Virtual mode applies hypervisor reserve and vCPU oversubscription checks.
Loads baseline vCPU, RAM, IOPS, and profile storage per active session.
Use the fields below to override the selected host profile.
Total people or devices that may use the RDS farm.
Size compute for active sessions, not directory user count.
Average sustained CPU share. Bursty apps need extra headroom.
Includes user apps, browser tabs, and session shell overhead.
Windows Server, monitoring, antivirus, print services, and agents.
Do not include memory reserved for the hypervisor or storage cache.
Use assignable vCPU for VMs or physical cores for bare metal hosts.
Keeps interactive sessions responsive during bursts.
Includes app cache, profile writes, temp files, and small reads.
For FSLogix, roaming profile containers, redirected folders, or UPD.
Extra IOPS and CPU during morning logons, shift changes, or classes.
Virtual mode only. Use 1.0 for physical hosts or strict reservations.
Adds spare capacity so maintenance or host failure does not overload sessions.
Applied to compute, RAM, IOPS, and profile storage requirements.
Session Hosts Needed
0
including reserve model
Active Sessions Per Host
0
recommended working load
Per-Host RAM Target
0 GB
after OS reserve and headroom
Profile Storage and Peak IOPS
0 TB
0 peak IOPS

Formula Breakdown

Active session estimate0 users x 0% concurrency
CPU sizing path0 vCPU demand, 0 sessions per host
Memory sizing path0 GB demand, 0 sessions per host
Host count before HA reserve0 hosts by max CPU/RAM limit
High availability reserveNo reserve added
Storage demand0 GB profiles plus headroom
IOPS demand0 steady, 0 peak login storm
Planning statusReady
💻RDS Session Spec Grid
0.08
vCPU task session
Light browser, terminal app, simple data entry, and scanner workflows.
0.14
vCPU office user
Office apps, PDFs, browser tabs, small line-of-business clients.
1.4 GB
ERP RAM baseline
Accounting, inventory, EHR, and thick client apps often need more cache.
20%
production headroom
Normal cushion for patches, antivirus, print drivers, and workload drift.
N+1
host failure spare
One full host can leave service without pushing every user into overload.
75%
CPU ceiling
Interactive workloads feel poor when CPU run queues stay saturated.
8-20
IOPS per session
FSLogix, browser caches, Outlook modes, and app logs can change this fast.
2:1
vCPU oversub
A cautious virtualization starting point for mixed office RDS workloads.
📊Reference Tables
Workload profilevCPU per active userRAM per active userStorage and IOPS note
Task worker or scanner app0.06 to 0.10 vCPU0.35 to 0.60 GBLow profile churn, often 3 to 6 IOPS per active session.
Office productivity desktop0.10 to 0.18 vCPU0.70 to 1.20 GBBrowser tabs and document previews usually drive memory more than CPU.
ERP, EHR, or accounting app0.18 to 0.30 vCPU1.20 to 1.80 GBDatabase clients and report exports create short CPU and I/O bursts.
Developer or admin tooling0.25 to 0.40 vCPU1.80 to 2.50 GBManagement consoles, scripts, and browser-heavy portals need more RAM.
Light CAD or GPU application0.35 to 0.70 vCPU2.50 to 4.00 GBValidate GPU, graphics policy, and storage throughput with a pilot group.
FormulaExpressionUsed forPlanning detail
Active sessionsnamed users x concurrencyCore session countUse measured broker logs when available instead of a survey guess.
CPU-limited sessionshost vCPU x CPU ceiling / CPU per userMaximum CPU fit per hostVirtual mode multiplies assignable vCPU by the oversubscription ratio.
RAM-limited sessions(host RAM - base reserve) / RAM per userMaximum memory fit per hostMemory pressure creates paging, which then increases storage latency.
Host countactive sessions / lower session limitRequired session hostsThe calculator adds headroom before rounding and then applies HA reserve.
Peak IOPSactive users x IOPS x login multiplierStorage burst targetMorning sign-in periods can be much higher than steady-state usage.
Host classTypical resourcesBest fitWatch point
Mini PC or lab node8 cores, 64 GB RAMPilot pools, admin desktops, and small officesConsumer storage can bottleneck during profile logons.
Tower server16 cores, 128 GB RAMSingle-site business app farmsPlan remote management and spare disk bays before production.
1U or 2U rack host24 to 32 cores, 192 to 256 GB RAMBalanced multi-host RDS farmNUMA layout and memory population affect consistency.
Dense virtualization node48 cores, 384 GB RAMKeep many RDS VMs on shared hypervisorsAvoid storage latency hidden behind high CPU capacity.
Cloud VM session host8 to 32 vCPU, 64 to 256 GB RAMElastic pools, temporary migration, hybrid usersInstance disk, network, and profile share limits can dominate.
Deployment sizeInputs to collectPrimary resultSecondary check
10 to 25 user home officeConcurrency, app profile, RAM per sessionOne or two hosts depending on HA needWhether a single host outage is acceptable.
30 to 100 user small businessBroker logs, app mix, profile container sizeTwo to five balanced session hostsFSLogix share IOPS and antivirus exclusions.
Classroom or labLogin time, simultaneous class size, reset methodEnough peak IOPS for sign-in stormsGolden image updates and profile cleanup rhythm.
Department app farmReport export peaks, print drivers, DB client cacheCPU and RAM per published-app hostPrinter mapping and redirected drive overhead.
Hybrid remote workforceVPN capacity, session hours, bandwidth per userHost count plus gateway capacityWAN latency, DNS, MFA, and certificate expiry paths.
💡RDS Sizing Tips
Concurrency tip: RDS sizing starts with active sessions, not the total number of licensed users. Pull broker or logon data if the farm already exists, then use the calculator headroom for growth and maintenance windows.
Storage tip: Profile disks often decide whether a farm feels fast. Keep FSLogix or profile-container storage on low-latency disks, and size for login storm IOPS instead of only steady-state desktop activity.

This calculator is a planning aid. Validate production RDS builds with a pilot group, real application telemetry, profile container growth, storage latency graphs, antivirus policy checks, and failover testing.

To determine the numbers of cores and RAM that a farm should have, you must determine the number of concurrent session that will occur at the same time. Each concurrent session consume CPU cycles, memory, and storage IOPS from the same host. Should the host run out of any of these resource, the experience for all of the users of that farm will collapse.

Many farms are sized incorrectly because they use the total number of accounts in Active Directory as the basis for sizing the farm, rather than the number of concurrent session that will occur at the same time. The calculator will provide a mathematical result for the number of sessions that each host can carry based off the workload type, concurrency percentage, and the class of each host. The calculator will also determine the number of session that each host can carry before the CPU or memory of the host become a limiting factor for that server.

How to Size Servers for Concurrent Users with CPU, RAM and Storage

Headroom and an N+1 spare are added to that number to provide for the event of one of the hosts failing. While you can skip the N+1 spare to reduce the total cost of ownership for the farm, it is a preventative measure to avoid outages that will affect all users of the farm. Workload types range from those of a task worker to those of a CAD/CADD user.

A task worker will only require half of a processor core and half of a gigabyte of RAM. A CAD user will require twice as much of each of these resource. The calculator allows users to select between each of these workloads, and each of these workloads will result in a different number of host server being calculated for that farm.

Additionally, not all departments in an organization will have the same type of workload. Departments like accounting may have vastly different workloads from departments like sales. Concurrency is a variable that is used in the calculation of the number of required host server for a farm.

Many organizations use the number of named user that are licensed for their organization to calculate the number of required host server. However, named users is not an accurate measurement for determining the number of host server that are required. It is possible for few named users to be logged in at the same time.

For this same reason, host server must also be provided for the login storm that may occur at the same time every day. The login-spike multiplier that is included in the calculator will help account for this login storm, or “rush” as it is sometimes referred to in relation to RDS farms. Beyond calculating the number of gigabytes of storage that are required for the data of each user, another constraint for RDS host is IOPS (input/output operations per second).

IOPS are required for profile and cache files to be accessed quickly by the host. Additionally, if Roaming Profiles and FSLogix containers are used, there will be IOPS bursts during the logon process that could make the login slow if there are not enough IOPS for that logon process. To account for this, the calculator will add a headroom factor for profile storage, and it will scale the peak IOPS by the login multiplier.

This will provide an accurate number of IOPS that are required to support the user during the busiest time of the day. The type of storage that is used for the profile share, whether spinning disks, flash drives, or a cloud file service will also impact the sizing of the farm. RDS host can be physical or virtual machines.

If they are virtual machines, the hypervisor and oversubscription will reduce the number of resources available for the RDS host. The calculator will provide a different effective core count if virtual mode is used. Additionally, the calculator will warn users of oversubscription levels that would cause the CPU utilization of the RDS host to go above the target ceiling.

Physical host will not have the overhead of a hypervisor, but they will be less flexible in performing maintenance on those host. Headroom percentages are used to account for the changes in workloads over time. Antivirus software updates, print job, and an overload of open browser tabs can take up resource of a user.

The design-headroom selector allows users to select the amount of buffer that should be allowed for the users in the farm. The calculated number of required host will reflect the headroom that is selected. Many farms use 15 to 30% headroom so as to allow for the growth of that organization’s user without having to constantly resize the farm.

The calculator will output a number of constraint that must be met by the RDS farm that is to be built. The constraints include the number of sessions that each host should be able to handle, the peak IOPS that will be required for that farm, and the total number of user that will be logged into the farm at a time. If the number of sessions per host is too high for the application that are to be used by the users, the concurrency percentage can be lowered.

If the peak IOPS requirement is higher than what the environment can store, there will need to be an investment in faster disk for that environment. These constraints will help to ensure that there are no surprises with the RDS farm that is built. The calculator should of been revisited should there be any change to either the users or the applications.

RDS Server Sizing Calculator for Session Hosts

Related posts

Leave a Comment