Usage-Based Pricing for IoT SaaS: The Model That Matches Your Product

Cristian Curteanu
15 min read
Usage-Based Pricing for IoT SaaS: The Model That Matches Your Product

Photo by Pixabay on pexels.com

Table of Contents

Your IoT product’s pricing page says $X per device per month. The actual cost to serve that device is $0.02 when it’s idle and $4.80 when it’s streaming at full rate. You’ve priced the idle case — and your highest-volume customers are getting an implicit subsidy your margins can’t sustain.

This is the structural pricing problem unique to IoT SaaS. Unlike seat-based B2B software, where one user generates roughly stable usage regardless of plan tier, IoT devices have a consumption distribution that looks nothing like a normal curve. Within a single customer fleet, utilization variance is typically 100x to 1000x between idle and active devices. Flat pricing can’t capture that. Seat-based pricing was never designed for it.

This article covers why flat pricing fails for IoT, the three billing unit archetypes that work, and how to select the right metric for your specific product — before you commit to an infrastructure that can or cannot measure it.


Why Seat-Based Pricing Is the Wrong Model for Device Fleets

Seat-based pricing works because human users are relatively uniform. A developer seat at a CI/CD platform generates a predictable band of usage — maybe 3x variance between a light and heavy user, but not orders of magnitude. Price the median, collect from everyone, maintain acceptable unit economics.

IoT devices do not behave like human users. Consider a typical industrial sensor deployment:

Device stateTransmission frequencyMonthly eventsCost to serve
Idle (standby mode)1 ping/hour~730~$0.04
Normal operation1 reading/minute~43,000~$2.15
High-frequency monitoring10 readings/second~26 million~$1,300

A single flat price per device mishandles all three cases simultaneously. You either underprice the high-frequency tier (margin destruction) or overprice the idle tier (churn from the long tail of low-utilization customers who don’t renew).

The underlying connectivity infrastructure you’re already paying for doesn’t price this way. AWS IoT Core charges $1.00 per million messages published to device topics. Azure IoT Hub tiers by monthly message volume from 400K at the lowest tier to 300 million at Standard S3. Google Cloud IoT charges per megabyte transferred. Your cloud bill scales with actual device activity — and your application billing should mirror the same structure.


The Three IoT Billing Unit Archetypes

Every effective IoT billing metric maps to one of three archetypes. The right choice depends on where your infrastructure cost actually concentrates.

Archetype 1: Per-Device (Active)

Charge based on the count of devices that were active — not registered, not provisioned, but actually communicating — within the billing period.

Best fit: Products where device activity is roughly uniform across the fleet and the dominant cost is connection maintenance rather than data volume. Passive asset trackers with daily check-ins. Low-frequency environmental sensors. Products where a device that transmitted once in a month costs about the same as one that transmitted daily.

Poor fit: Any product with high variance between idle and active devices. Charging per active device when some devices generate 100 events/day and others generate 1 event/month creates the same subsidy problem as flat pricing — you’ve just moved the threshold.

Metric definition: A device is “active” if it generated at least one billing event in the period. The simplest and most verifiable unit.

Archetype 2: Per-Event / Per-Transmission

Each message, reading, API call, or data upload is a discrete billable event. Customers pay for exactly what they generate.

Best fit: Products where per-message overhead (connection setup, protocol parsing, routing, storage) dominates your infrastructure cost. Industrial telemetry pipelines. Real-time monitoring platforms. Any product where your cost function is linear with event count.

Poor fit: Very low-frequency devices where individual event billing creates invoice amounts too small to process economically. If your P50 customer generates 500 events/month at $0.0001/event, you’re generating $0.05 invoices — not viable without a minimum commitment structure.

Metric definition: Define explicitly what constitutes a billable event. “A message received by the ingestion endpoint” is unambiguous. “A transmission” is not — does a retransmission count? Does a batch upload of 1,000 readings count as 1 event or 1,000?

Archetype 3: Per-Data-Volume

Billing on bytes transferred, stored, or processed. The most natural fit when bandwidth or storage dominates your cost structure.

Best fit: Products where the payload size variance between customers determines your cost more than the event count. Connected cameras. Audio monitoring systems. High-resolution imaging sensors. Anything where one customer’s “event” might be 50 bytes and another’s is 50 megabytes.

Poor fit: Low-bandwidth, high-frequency sensors where every event is small but event count is what drives cost. Charging per megabyte when your P95 customer generates 8MB/month obscures the real billing signal.

Metric definition: Bytes ingested (at the ingestion endpoint) is the cleanest measurement point. Bytes stored adds storage lifecycle complexity. Bytes processed by analytics pipelines adds another layer of ambiguity.


The Device Fleet × Usage Intensity Variable

The pricing failure mode unique to IoT doesn’t show up in typical SaaS metrics. It shows up in your gross margin per customer.

Consider two customers on the same flat-rate plan:

Customer A — Industrial monitoring company. 200 sensors on a manufacturing floor, each transmitting every 10 seconds during production hours (16 hours/day).

  • Monthly events: ~345 million
  • Infrastructure cost: ~$1,725/month
  • Plan price: $500/month
  • Gross margin: -245%

Customer B — Smart building company. 200 sensors measuring temperature and humidity, transmitting every 15 minutes.

  • Monthly events: ~576,000
  • Infrastructure cost: ~$29/month
  • Plan price: $500/month
  • Gross margin: 94%

Both customers have 200 devices. Both pay $500/month. Customer A is destroying margin. Customer B is financing your growth. The flat pricing model is hiding this.

Usage-based billing makes it visible — and makes it self-correcting. Customer A pays $1,725/month; their infrastructure cost is covered. Customer B pays $29/month or the plan minimum, and stays because the cost is proportional to their actual value received.


Hybrid IoT Pricing: The Revenue Floor You Need

Pure per-event billing creates revenue forecasting problems. A customer whose fleet goes dark for a month generates zero revenue, but you’ve still provisioned their infrastructure, maintained their account, and supported their integration.

The model that resolves this is a hybrid structure: a committed base fee per device (or per active device tier) that provides a revenue floor, with metered overages above a per-device event threshold.

Example: Fleet Monitoring Platform Pricing

  Base:         $3.00 per active device per month
                Includes 5,000 events per device

  Overage:      $0.00008 per event above the included threshold

Example invoices:
  Customer A — 200 devices, 345M events/month:
    Base:     200 × $3.00              = $600
    Overage:  (345M - 1M) × $0.00008  = $27,520
    Total:    $28,120

  Customer B — 200 devices, 576K events/month:
    Base:     200 × $3.00              = $600
    Overage:  none (below threshold)
    Total:    $600

Customer A now pays proportionally to what they consume. Customer B has a predictable bill. Your revenue floor is maintained. Your gross margin is protected.

Setting the included threshold: use your P50 event count per device, per month. At that level, half of your customers pay only the base; the other half generate overage revenue. The P50 threshold creates the right balance between coverage and upside capture.


Billable Metric Selection by IoT Product Type

Product categoryPrimary metricSecondary / overage metricWhy
Asset tracking (GPS)Per active assetPer geofence eventAsset count drives connection cost; geofence events drive compute
Industrial sensors (IIoT)Per active devicePer event above thresholdDevice count is the floor; event frequency drives cost
Connected cameras / audioPer active devicePer GB ingestedBandwidth, not event count, drives cost
Smart energy / meteringPer meter enrolledPer read above thresholdMeter count is contractually fixed; read frequency is the variable
Predictive maintenancePer sensor monitoredPer inference runML inference cost is the dominant driver
Fleet telematicsPer vehiclePer trip or per diagnostic eventVehicle count is the base; trip frequency drives telemetry volume
Agricultural IoTPer field-device-dayPer analytics runSeasonal usage means daily device granularity matters
Consumer IoT (wearables)Per active userPer premium feature invocationUser-centric, not device-centric — one user may have 3 devices
Building automationPer controlled zonePer optimization cycleZone count drives baseline; optimization frequency drives compute
Remote patient monitoringPer enrolled patientPer qualifying readingCMS CPT code alignment requires patient-level granularity

The Infrastructure Implication

Selecting the right billing metric is not just a pricing decision. It determines what your instrumentation layer must capture, how your aggregation pipeline must work, and whether your billing system can handle the event volume your product generates.

Per-device billing is the simplest to instrument: count unique device IDs active in a period. Per-event billing requires an ingestion pipeline that can handle peak IoT message rates — which can reach millions of events per second for industrial deployments — with idempotency guarantees to prevent double-billing on MQTT retransmissions. Per-data-volume billing requires byte-accurate measurement at the ingestion endpoint, with clear policies on what counts (compressed or uncompressed? headers included?).

IoT billing infrastructure has specific failure modes that general metered billing articles don’t cover: connectivity gaps where devices reconnect after 72 hours and upload a backlog of events, clock skew where device timestamps are off by minutes, and fleet-level aggregation where events from thousands of device IDs must roll up to per-tenant billing totals without losing the device-level audit trail.

For a detailed walkthrough of how the event ingestion and aggregation pipeline works for IoT products specifically, see 10 Use Cases of Usage-Based Billing for IoT SaaS and Engineering Metered Billing for IoT: From Device Event to Customer Invoice.

For the general metered billing infrastructure requirements, see Metered Billing Explained.


Who Gets This Wrong and How

The seat-pricing holdover. Teams that built B2B SaaS before adding an IoT component often carry over seat-based pricing because it’s familiar to buyers. The problem surfaces at renewal: your highest-value customers (most devices, most active) are the ones most likely to get a CFO-initiated cost review because their bill is the largest flat fee on the SaaS budget. Usage-based billing inverts this — your highest-value customers have the most justified invoice.

The API-first assumption. Dev tools pricing (per API call, per build minute) maps cleanly to usage-based models because API calls are human-initiated and relatively low volume. IoT devices generate events autonomously, continuously, and at volumes that typical SaaS billing APIs weren’t designed to ingest. The pricing model decision and the infrastructure decision are coupled — choosing per-event billing without solving for the ingestion volume is a production failure waiting to happen.

Billing on device registration, not device activity. Charging for every provisioned device, including those that have never transmitted a message, creates churn-inducing invoices during device onboarding phases and creates no incentive for customers to actually activate their fleet. Bill on activity. Registration is a technical state, not a value signal.


Your IoT billing model, reviewed in 30 minutes

Your IoT billing model, reviewed in 30 minutes

ABAXUS is a self-hosted usage-based billing engine that runs inside your own infrastructure — handling device-event ingestion at scale, per-device and per-event hybrid pricing, and real-time customer dashboards without per-transaction fees.

See Pricing

When to Have the Pricing Model Conversation

The pricing model decision should happen before the billing infrastructure build, not after. The reason: instrumentation choices made during product development — what events get emitted, at what granularity, with what identifiers — determine what billing metrics are even measurable later.

A team that instruments at the device level can always aggregate to the fleet level. A team that only instruments at the fleet level (e.g., batch daily totals per tenant) cannot reconstruct per-device event counts retroactively. The instrumentation granularity decision is made once, early, and is expensive to reverse.

The right sequence:

  1. Choose your billing metric first
  2. Design your instrumentation to emit the events that metric requires
  3. Build the billing pipeline on top of that event stream
  4. Set your pricing rates last — rates can change; event schemas are much harder to change in production

See 5 Signs Your Business Is Ready for Usage-Based Pricing for a readiness assessment before starting the instrumentation work.


Book an Architecture Review

Choosing a billing metric for an IoT product is specific to your device behavior, your infrastructure topology, and your customer contracts — the generic frameworks only take you so far.

ABAXUS offers 30-minute architecture reviews scoped to your specific situation. In a single session, we’ll work through:

  • Which billing unit archetype fits your device fleet’s actual cost structure
  • How to design your instrumentation layer so it captures the right events without PHI or sensitive data in the billing pipeline
  • What your ingestion infrastructure needs to handle your peak event rates without throughput limits or per-event fees
  • Whether hybrid pricing (base + overage) or pure consumption billing is the right structure for your customers and your revenue predictability requirements

No generic demo. No sales pitch. A structured conversation with an engineer who has solved this problem for IoT products at scale.

Book a 30-minute architecture review →



ABAXUS is a self-hosted usage-based billing engine for engineering teams that need full control over their billing infrastructure. It runs inside your own Kubernetes cluster — handling device-event ingestion at IoT scale, configurable per-device and per-event pricing, real-time usage dashboards, and a complete audit trail — without per-transaction fees. See pricing · Book an architecture review

FAQs

Stop debugging billing. Start shipping product.

Your billing layer should be invisible infrastructure. In 30 minutes we map your event sources, identify your data contract gaps, and show you exactly what fixing the architecture looks like. No sales pitch.