Traffic & Cost Simulation · 10 RPS → 100M RPS · Instance costs modelled · No infrastructure required

Traffic, cost, and instance
simulation at 100M RPS -
before you provision a thing.

PinPole runs synthetic traffic through your full architecture, computes per-node metrics in real time, and shows you exactly what that architecture costs - by service, by instance type, and at every RPS tier - before a single AWS resource is provisioned.

Start for free → Simulation reference →

No AWS account required to design and simulate · 14-day free trial on Pro · No credit card

Product walkthrough - Traffic & Cost Simulation Canvas build → RPS configuration → live per-node metrics → live cost estimate → instance cost breakdown → recommendations
Replace with: 90–120 s screen recording · 1920×1080 · looped or click-to-play
~1:50
Traffic simulation 10 RPS → 100M RPS ·
Constant · Ramp · Spike · Wave patterns ·
Per-node live metrics at 100 ms ticks ·
Live monthly cost estimate during simulation ·
EC2 instance cost modelling ·
RDS & Aurora instance sizing ·
ElastiCache instance cost ·
Fixed vs per-request cost comparison ·
Lambda concurrency simulation ·
DynamoDB WCU / RCU modelling ·
Spike-weighted monthly cost ·
recommendations with quantified impact ·
One-click apply · Execution history ·
Traffic simulation 10 RPS → 100M RPS ·
Constant · Ramp · Spike · Wave patterns ·
Per-node live metrics at 100 ms ticks ·
Live monthly cost estimate during simulation ·
EC2 instance cost modelling ·
RDS & Aurora instance sizing ·
ElastiCache instance cost ·
Fixed vs per-request cost comparison ·
Lambda concurrency simulation ·
DynamoDB WCU / RCU modelling ·
Spike-weighted monthly cost ·
recommendations with quantified impact ·
One-click apply · Execution history ·

Four traffic patterns.
Every failure mode exposed.

Run at least two patterns per architecture iteration. Constant confirms steady-state health. Spike reveals latency and concurrency failures that a static baseline will never surface. Together, they give you a cost model that reflects how your architecture actually behaves - including on the worst day of the year.

Traffic pattern reference →
Constant free

Steady-state load at a fixed RPS. Validates baseline behaviour and establishes the cost floor. The starting point for every simulation session.

Use for
Sizing validation · quota checks · baseline cost modelling
Ramp pro

Load increases linearly from zero to peak. Tests auto-scaling responsiveness and exposes instance types that cannot scale fast enough to meet demand.

Use for
Growth modelling · instance scaling validation · capacity planning
Spike pro

Instantaneous burst to peak RPS. Models a product launch or flash sale. Exposes cold start penalties, concurrency limits, and instance under-provisioning.

Use for
Launch prep · cold start testing · spike-weighted cost modelling
Wave pro

Oscillating load between baseline and peak. Models daily traffic cycles or batch jobs. Tests recovery between bursts and validates auto-scaling thresholds.

Use for
DynamoDB on-demand vs provisioned · diurnal cost modelling · burst recovery
📊
Constant · screenshotSim panel at 1K RPS steady-state
Constant - baseline
📈
Ramp · screenshotNodes & cost climbing together
Ramp - scaling in action
Spike · screenshotLambda amber + cost estimate peak
Spike - burst & cost peak
Wave · screenshotCost oscillating with traffic cycle
Wave - periodic cost

Per-node metrics.
Real time. Every 100 ms.

While the simulation runs, every service node on the canvas shows live RPS, latency, health status, and utilisation. The first node to throttle under load is your current bottleneck - and a direct signal for where your cost model has hidden exposure.

🖥
Canvas - nodes while simulation running CloudFront + API Gateway healthy (green border, live RPS + latency).
Lambda approaching concurrency limit (amber border + warning badge).
RDS instance showing utilisation bar at 72%.
Replace with: canvas screenshot at 1K RPS · approx. 1200×900

Node colours shift green → amber → red as thresholds are approached. Each card shows live RPS, latency, health badge, and a utilisation bar.

Current RPS
Live requests per second propagating through the architecture graph. Confirms load is flowing as configured and surfaces bottlenecks as they emerge.
$
Est. Cost Pro
Live monthly cost estimate that updates continuously as RPS changes. Watch it alongside RPS to understand cost-per-request at each traffic tier and under spike conditions.
Alerts
Count of threshold breaches or configuration warnings. A non-zero count requires investigation - every alert is also a cost signal. Do not dismiss without understanding the cause.
Node Metrics
Per-service RPS, latency in ms, health (healthy / warning / critical), and utilisation %. Propagated through the full architecture graph at 100 ms tick intervals.
Elapsed Time
Duration the simulation has run. For Ramp and Wave patterns, let simulations stabilise for 30–60 seconds before reading steady-state cost or performance figures.
🎛
Simulation panel - screenshot or short loop video Base RPS slider at 1K · Spike pattern active · Pause + Stop buttons
Live metrics: Current RPS 1.0K · Elapsed 0.5s · Est. Cost $12,029/mo · Alerts 0
Node list: api-gateway healthy 10ms · cloudfront healthy 16.7ms · lambda healthy
Replace with: 360×680 screenshot or ~10 s UI recording loop

The simulation panel - controls, live metrics, and per-node health in a single sidebar. No context-switching required.

Controls, metrics, and cost - one panel, one workflow.

The simulation panel gives you a Base RPS slider (10 to 100M RPS, logarithmic), traffic pattern selector, start/pause/stop controls, and the full live metrics readout - including the live cost estimate - without leaving the canvas.

Pause and resume - simulations can be paused mid-run. If you change Lambda concurrency settings while paused, stop and restart; concurrency changes apply at initialisation only.

Every run is saved automatically to Execution History on Pro and above - including the canvas state, traffic pattern, peak RPS, and estimated cost at the moment of the run.

Get Recommendations fires directly from the simulation panel. The recommendations engine analyses both performance warnings and cost optimization opportunities - cost-impacting findings are always surfaced alongside performance findings.

Simulation controls reference →

Live cost estimation.
Not a static spreadsheet.

AWS Pricing Calculator models a single static request rate. PinPole's cost estimate updates in real time during simulation - including under Spike and Wave patterns - capturing the service interaction effects, provisioned concurrency overhead, and instance cost structures that only materialise under real load. The number the CFO needs is the spike-weighted monthly cost, not the baseline.

Cost estimation reference →
1.7%
Average delta between PinPole simulation estimate and first real AWS bill
Simulation predicted $38,840/mo · Actual bill $39,510/mo · Delta $670
$74K
Monthly saving identified in 1 hour by switching DynamoDB on-demand → provisioned at 100K RPS
On-demand ~$84K/mo · Provisioned + auto-scaling ~$9.8K/mo · Visible on canvas before provisioning
$2,360
Hidden monthly cost surfaced by Spike simulation that a static Pricing Calculator missed
Provisioned concurrency · ElastiCache fallthrough · Lambda duration increase - invisible to static tools
Cost simulation walkthrough - short video Same architecture in AWS Pricing Calculator (static) vs PinPole (live). Ramp pattern runs from 500 RPS → 12K RPS. Pricing Calculator stays flat. PinPole cost estimate climbs with the ramp, surfacing interaction effects in real time.
Replace with: 60–90 s screen recording · split-screen format · 1920×1080
~1:10
AWS Pricing Calculator
Static estimate
Lambda (baseline 1,200 RPS)$4,200/mo
Provisioned concurrencyNot modelled
DynamoDB (estimated)$8,400/mo
ElastiCache fallthrough costNot modelled
Spike overhead (payroll day)Not modelled
API Gateway + networking$1,800/mo
Static total $41,200/mo

Does not model traffic patterns, inter-service interaction effects, or spike conditions. Delta from actual: 4.3% (better than average) but misses $2,360 in spike-driven costs entirely.

PinPole simulation
Live estimate
Lambda (Spike pattern, peak load)$5,840/mo
Provisioned concurrency (80 units)$2,100/mo
DynamoDB (spike-weighted RCU/WCU)$11,570/mo
ElastiCache (incl. overflow cost)$3,200/mo
Spike overhead (modelled payroll day)+$1,800/mo
API Gateway + networking$1,780/mo
Simulation total $38,840/mo

Updates in real time during simulation. Includes instance cost, provisioned concurrency, and spike-pattern overhead. Actual bill: $39,510. Delta: 1.7%.

1.7% simulation accuracy

The first real AWS bill came in at $39,510. PinPole's pre-deployment simulation predicted $38,840 - a delta of $670. The gap was attributable to slightly higher than modelled SNS fan-out volume - a usage pattern since added to the canvas model. The original static Pricing Calculator estimate was $41,200, missing $2,360 in spike-driven overhead entirely.

💰
Live cost estimate - canvas top bar during Spike simulation Cost figure updating in canvas top bar as Spike pattern peaks.
Show transition: $26,550 (Constant baseline) → $38,840 (Spike peak).
Optional: side-by-side with Execution History showing cost across 12 runs.
Replace with: screenshot or short GIF · canvas top bar in focus · 1200×200 crop or full canvas

The cost estimate in the canvas top bar updates every simulation tick. Baseline cost is the floor. Spike-weighted cost is the number to commit to.

The cost the CFO needs - at spike load, not baseline.

Static cost calculators show you what your architecture costs at the RPS you type in. They don't show you what it costs when the product succeeds - when a campaign drops, a payroll day hits, or a launch goes well. PinPole models all of it.

Spike-weighted monthly cost - the cost estimate under Spike conditions is the number to carry into budget conversations, not the Constant baseline. PinPole makes both visible simultaneously.

Per-service cost breakdown - see exactly which service is driving the cost model at each RPS tier. Right-sizing decisions (instance type, DynamoDB mode, concurrency) are visible in the estimate before any changes are applied.

Execution History as cost audit trail - every simulation run is saved with its estimated cost. Compare any two runs side-by-side to see the exact cost consequence of an architecture change.

Instance costs modelled
across every service type.

Not all AWS costs are per-request. EC2, RDS, Aurora, and ElastiCache are priced by instance type and hours run - and the right instance choice is the single biggest lever on your monthly bill. PinPole models fixed instance costs, scales them against your traffic profile, and surfaces right-sizing recommendations with quantified monthly impact before you provision.

Instance cost modelling reference →
RDS & Aurora - instance cost at 10K RPS
ConfigurationInstanceEst. cost/moNotes
Aurora Serverless v2 selected
avg 4 ACU · auto-scaling
~$720
~$720/mo
ACU-hour pricing - best for variable load
RDS PostgreSQL
db.r6g.2xlarge · Multi-AZ · Proxy
r6g.2xlarge
~$870/mo
Fixed infra - efficient at predictable load
Aurora MySQL
db.r6g.2xlarge · Proxy · Storage
r6g.2xlarge
~$980/mo
Per-I/O charges add to base instance cost
DynamoDB on-demand avoid
no instance · per-request
-
~$8,400/mo
10× more than RDS at sustained 10K RPS
ElastiCache - instance sizing
InstanceEst. cost/moBest for
cache.t4g.medium
2 vCPU · 3.09 GB
~$55/mo
Dev / low-traffic · max 10K conn
cache.r7g.xlarge recommended
4 vCPU · 26 GB
~$280/mo
Production reads up to ~50K RPS
cache.r7g.4xlarge
16 vCPU · 105 GB
~$1,120/mo
High-throughput · 100K+ RPS read tier
🖥Fixed infrastructure cost
EC2, RDS, Aurora provisioned, and ElastiCache are billed by instance-hour regardless of RPS. PinPole models the full instance cost in the monthly estimate - including Multi-AZ standby, RDS Proxy vCPU, and replica hours - so you're never surprised by the line items the AWS console buries.
Fixed (instance)
RDS db.r6g.2xlarge$870/mo
RDS Proxy$145/mo
500 GB gp3 storage$57/mo
Per-request (DynamoDB)
On-demand @ 10K RPS$8,400/mo
Provisioned @ 10K RPS$1,150/mo
Crossover vs RDS~3–4K RPS
📐Right-sizing recommendations
After each simulation, PinPole's AI analyses actual utilisation against instance capacity. An r6g.2xlarge running at 34% utilisation under Constant load is a right-sizing candidate - the recommendation quantifies the monthly saving from dropping to r6g.xlarge before you apply the change.
Fixed vs per-request crossover
The economic crossover between DynamoDB on-demand and a fixed-instance database shifts with RPS. PinPole surfaces the breakeven point for your specific architecture: at sustained 10K RPS, provisioned DynamoDB or RDS typically beats on-demand by 7–10×. At 1M RPS, Aurora becomes cheaper than provisioned DynamoDB. Simulation makes both crossovers visible before any infrastructure is committed.
🔌Connection pool & proxy costs
RDS Proxy and ElastiCache connection costs are included in the instance cost model. Under Spike patterns, PinPole surfaces connection pool saturation - which forces fallthrough to more expensive downstream services - before it inflates your bill. This is the hidden cost that static calculators structurally cannot model.
Node Configuration panel - RDS instance settings db.r6g.2xlarge selected · Multi-AZ toggle on · RDS Proxy enabled
Storage: 500 GB gp3 · IOPS: 3000
Live per-node cost estimate visible at bottom of panel: $870/mo
Replace with: node config panel screenshot · approx. 420×600
📋
Cost breakdown panel - per-service instance cost Itemised monthly cost: Lambda · RDS · ElastiCache · API Gateway · CloudFront
Shows instance-cost line items (instance hours, proxy, storage) separately from per-request costs
Total updating live during Spike simulation
Replace with: cost breakdown panel screenshot or video loop · approx. 360×480

The Node Configuration panel shows instance-level cost alongside service properties. The cost breakdown panel itemises fixed instance costs separately from per-request charges.

Configure instance type. See the cost consequence instantly.

Every instance property you set in the Node Configuration panel is reflected immediately in the monthly cost estimate. Change db.r6g.2xlarge to db.r6g.xlarge and the estimate updates before you run another simulation. Add a read replica and the replica instance cost is added to the total.

Instance hours - EC2, RDS, Aurora provisioned, and ElastiCache are modelled as 24/7 instance cost. Multi-AZ standby instance hours are included automatically when Multi-AZ is enabled.

Storage, IOPS, and throughput - gp3/io1 storage costs, provisioned IOPS charges, and EBS throughput are calculated from the values you set in node configuration and added to the instance cost line.

AI right-sizing recommendations - after each simulation, the AI analyses actual peak utilisation vs instance capacity and recommends the smallest instance that safely handles your traffic profile, with the monthly saving quantified.

Instance vs serverless crossover - at each RPS tier, the cost breakdown shows whether a fixed-instance or per-request architecture is more cost-effective, and where the crossover occurs as you scale.

Recommendations
ranked by severity and cost.

After each simulation, PinPole's AI analyses your architecture and returns findings categorised by severity. Every recommendation is specific - the service, the problem, and the fix - with quantified cost or latency impact. Performance warnings and cost optimization findings appear in the same list, ranked by consequence.

WARNINGmodify config
Enable Provisioned Concurrency for Request Processor Lambda

The Request Processor Lambda experiences 1,488 cold starts, increasing latency to 156.3 ms. Provisioned concurrency will keep instances initialised, reducing cold-start latency during traffic spikes.

Expected: Reduce latency by up to 50%, decrease cold starts by 90%
Apply to canvas →One-click apply · Pro
WARNINGmodify config
Right-size ElastiCache from r7g.xlarge to r7g.2xlarge

Under Spike simulation at 8,000 RPS, ElastiCache connection pool saturates at 6,200 RPS causing fallthrough to DynamoDB. Estimated additional DynamoDB cost: +$2,170/mo. Upgrading to r7g.2xlarge eliminates fallthrough at +$280/mo.

Expected: Save ~$1,890/mo net - eliminate $2,170 DynamoDB overflow, add $280 instance cost
Apply to canvas →One-click apply · Pro
INFOadd service
Add Caching Layer with Amazon DynamoDB Accelerator (DAX)

At 100K RPS, adding DAX in front of DynamoDB provisioned reduces estimated cost from $9,800/mo to approximately $6,100/mo at an 80% cache hit ratio, while improving p50 read latency from 2ms to sub-millisecond.

Expected: Save ~$3,700/mo · DAX fleet cost ~$420/mo · Net saving ~$3,280/mo
Apply to canvas →One-click apply · Pro
ARCHITECTUREarchitecture
Switch DynamoDB on-demand to provisioned mode

At your current sustained 10K RPS traffic profile, DynamoDB on-demand costs approximately $8,400/mo. Switching to provisioned capacity with auto-scaling reduces this to ~$1,150/mo - a saving of $7,250/mo with no latency trade-off.

Expected: Save $7,250/mo - highest-impact single configuration change at this traffic tier
Apply to canvas →One-click apply · Pro
One-click apply - the recommendation updates the canvas.
On Pro and above, every recommendation has an Apply button. Clicking it updates the canvas automatically - adding service nodes, modifying configuration values, or re-routing connections - without manual canvas editing. After applying, re-run the simulation to validate the change and see the updated cost estimate.
Configuration changes take effect immediately in the cost estimate. Re-run the simulation to validate that the performance improvement matches the recommendation's expected outcome before exporting IaC or deploying.
recommendations reference →
Recommendations panel - screenshot Shows 6 recommendations: 2× WARNING · 2× INFO · 2× ARCHITECTURE
Each card shows: severity badge · action type · title · description · expected cost/latency impact · Apply button
"Refresh Recommendations (6)" button at top
Replace with: recommendations panel screenshot · approx. 440×680

Recommendations are categorised by severity (Warning, Info, Architecture) and action type (Modify Config, Add Service, Architecture). Cost-impacting findings include quantified monthly savings.

Simulation features by plan.

Traffic simulation is available on all plans. Cost estimation, instance cost modelling, Spike/Ramp/Wave patterns, and one-click apply require Pro or above.

Simulation & cost features
Feature
Free
Pro
Team
Enterprise
Traffic simulations / month
5
Unlimited
1,000 pooled
Custom
RPS range
10 – 100M
10 – 100M
10 – 100M
10 – 100M
Traffic patterns
Constant only
All 4
All 4
All 4
Per-node live metrics
Live cost estimation
-
Instance cost modelling
-
recommendations
3 / month
Unlimited
Unlimited
Unlimited
One-click apply
-
Execution history
-
Version comparison & rollback
-

Know your AWS costs before you provision a single resource.

Traffic simulation, live cost estimation, instance cost modelling, and recommendations - all at design time, before a line of Terraform is written.

Start for free → Read the docs →