AzureAzure SignalR ServiceApplication Integration

azurerm_signalr_service cost estimation

Managed real-time messaging over WebSockets. Priced per unit per day by tier, with included connections and messages per unit.

An azurerm_signalr_service provides managed real-time messaging (WebSockets, server-sent events, long polling) so you don't run your own SignalR backplane. Pricing is by capacity unit, billed per unit-day, with each tier including a fixed quota of concurrent connections and messages per unit.

The Standard tier is the common production choice at roughly $1.61/unit-day; each unit includes 1,000 concurrent connections and 1 million messages/day. Premium runs about $2.00/unit-day and adds availability-zone redundancy and autoscaling. The Free tier costs nothing but caps at 20 connections and 20k messages/day, suitable only for development.

c3x reads the sku and capacity and prices the unit-days at roughly 30.4 days/month. Messages and connections beyond the included quota are usage-based and modelled from c3x-usage.yml. The Free tier correctly estimates to zero. Scaling is by adding units, so the estimate is linear in capacity.

Terraform example

A minimal but realistic configuration that C3X can estimate.

resource "azurerm_signalr_service" "realtime" {
  name                = "app-realtime"
  resource_group_name = azurerm_resource_group.app.name
  location            = "eastus"

  sku {
    name     = "Standard_S1"
    capacity = 2
  }

  service_mode = "Default"
}

Pricing dimensions

What you actually pay for when you provision azurerm_signalr_service.

DimensionUnitWhat's being charged
Service unitsper unit-dayPer-unit daily rate by tier. Each Standard unit includes 1,000 concurrent connections and 1M messages/day. c3x prices capacity x ~30.4 days/month.
$1.61/unit-day (Standard), $2.00 (Premium)
Additional messagesper million messagesMessages beyond the included per-unit quota. Usage-based; define in c3x-usage.yml.

Sample C3X output

Example output from c3x estimate (Standard, 2 units):

azurerm_signalr_service.realtime
└─ Service units (Standard x 2)   60.8  unit-days    $97.88

OVERALL TOTAL                                        $97.88

Optimization tips

Common ways to reduce azurerm_signalr_service cost without changing the workload.

Size units to peak concurrent connections

Per excess unit

Each Standard unit covers 1,000 concurrent connections. Provision units for your real peak concurrency, not a round number. Over-provisioning units is the main waste.

Use the Free tier for dev and demos

100% in non-prod

The Free tier (20 connections, 20k messages/day) costs nothing and is fine for development and small demos. Reserve paid units for production.

Choose Standard over Premium unless you need AZ redundancy

~20%

Premium adds zone redundancy and autoscaling at ~25% more per unit. If you don't need those, Standard delivers the same messaging at a lower per-unit rate.

FAQ

How does c3x estimate Azure SignalR cost?

It reads the sku tier and capacity and prices the unit-days at roughly 30.4 days/month. Messages beyond the per-unit included quota are usage-based and supplied in c3x-usage.yml. The Free tier estimates to zero.

What does one Standard unit include?

1,000 concurrent connections and 1 million messages per day. Scaling capacity adds units linearly, so two units double both the quota and the cost.

Is the Free tier really free?

Yes, with hard caps of 20 concurrent connections and 20,000 messages/day. c3x estimates it at zero. It's intended for development, not production traffic.

When is Premium worth the extra cost?

When you need availability-zone redundancy or autoscaling. Premium is about $2.00/unit-day vs Standard's $1.61. For most apps Standard is sufficient.

How does this compare to running SignalR myself?

Self-hosting SignalR needs a Redis backplane and your own scaled web tier. The managed service trades that operational cost for the per-unit fee, which is usually cheaper once you account for the backplane and ops time.

Related resources

Estimate this resource in your own Terraform

Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including azurerm_signalr_service.