{
 "features_resolved": {
  "snapshot_any": true,
  "snapshot_mem": false,
  "fork": true,
  "pause_resume": true,
  "persistent_disk": true,
  "whole_disk": true,
  "persist_scope": null,
  "volumes": false,
  "auto_stop_idle": true,
  "long_sessions": true,
  "custom_image": true,
  "image_snapshot": true,
  "image_oci": true,
  "vm_isolation": true,
  "docker_inside": null,
  "nested_virt": null,
  "root": true,
  "systemd": null,
  "browser": null,
  "desktop": true,
  "computer_use": true,
  "code_interpreter": false,
  "browser_control": null,
  "desktop_control": null,
  "browser_and_desktop": null,
  "anti_bot": null,
  "captcha_solving": null,
  "residential_ip": null,
  "agent_harnesses": false,
  "ssh": true,
  "public_ipv4": false,
  "inbound_https": true,
  "custom_domain": true,
  "raw_tcp_inbound": null,
  "egress_allowlist": null,
  "open_internet": null,
  "static_egress_ip": null,
  "private_network": null,
  "self_host": false,
  "byoc": false,
  "open_source": false,
  "soc2": null,
  "hipaa": null,
  "sso": null,
  "gpu": false,
  "arm64": null,
  "windows": false,
  "macos": false,
  "lang_python": null,
  "lang_node": null,
  "lang_go": null,
  "lang_rust": null,
  "lang_java": null,
  "gpu_desktop": false,
  "credential_injection": null,
  "egress_http_rules": null,
  "wake_on_request": null,
  "live_resize": null,
  "fork_running": null,
  "memory_snapshot_fork": false,
  "webhooks": null,
  "scheduled_wakeups": null,
  "audit_logs": null,
  "eu_data_residency": null,
  "zero_data_retention": null,
  "scoped_api_keys": null,
  "spend_limits": true,
  "mcp_server": null,
  "usage_api": false,
  "snapshot_auto": true,
  "snapshot_on_demand": true,
  "harness_api": false,
  "own_agent_api": null,
  "fast_boot": false,
  "strong_isolation": true,
  "ingress_rules": true,
  "guest_firewall": true,
  "secret_proxy": false,
  "secret_proxy_any": false,
  "volume_attach": false,
  "volume_shared": false,
  "sidecar": null,
  "fuse": true,
  "kernel_features": true,
  "burst": null
 },
 "company": {
  "id": "run-cloud",
  "checked": "2026-09-30",
  "company": "Small Scale Labs AB (Run Cloud)",
  "ownership": {
   "value": "independent",
   "parent": null,
   "source": "https://run.cloud/privacy/",
   "quote": "Small Scale Labs AB (“Run Cloud,” “we,” “us,” or “our”) provides cloud infrastructure for developers and AI agents... We are established in Sweden, at Agavägen 19, 181 55, Lidö, Sweden."
  },
  "stage": {
   "value": "unknown",
   "source": "",
   "quote": "",
   "confidence": "low",
   "note": "No funding announcement, accelerator mention, press coverage, Crunchbase/LinkedIn profile, or team/about page could be found for Run Cloud or its legal entity Small Scale Labs AB. The site is minimal (no about/careers/team pages), suggesting an early-stage, possibly self-funded Swedish company, but this could not be confirmed."
  },
  "accelerators": [],
  "total_funding_usd": {
   "value": null,
   "status": "unknown"
  },
  "last_round": {
   "type": null,
   "amount_usd": null,
   "date": null,
   "leads": [],
   "status": "unknown",
   "source": "",
   "quote": ""
  },
  "investors": [],
  "portfolio_listings": [],
  "revenue": {
   "value": null,
   "status": "unknown"
  },
  "employees": {
   "value": null,
   "source": ""
  },
  "note": "Run Cloud is operated by Small Scale Labs AB, a private company registered at Agavägen 19, 181 55, Lidingo, Sweden (per its Privacy Policy). The product has pivoted: its original Linux microVM sandbox offering (Firecracker-based, the subject of this pricing card) is deprecated and closed to new organizations as of 2026-09-28; the current live product is iOS simulators / Android emulators / Xcode builds in the browser. No press coverage, funding announcement, accelerator listing, Crunchbase/PitchBook profile, LinkedIn company page, or about/team/careers page could be located within the research window — web searches (DuckDuckGo, Bing, Marginalia, HN Algolia, Swedish business registries) were either blocked/rate-limited or returned no relevant results. Ownership is marked 'independent' based only on the absence of any evidence of being a subsidiary or acquisition; this should be treated as low-confidence."
 },
 "id": "run-cloud",
 "name": "Run Cloud",
 "url": "https://docs.run.cloud/sandboxes/index.md",
 "category": "agent-sandbox",
 "isolation": "firecracker",
 "modes": [
  {
   "key": "floor-burst",
   "label": "Linux microVM, minimal CPU floor + auto-burst (deprecated)",
   "flags": [
    "legacy"
   ],
   "os": [
    "linux"
   ],
   "regions": null,
   "gpu_only": false,
   "features": {
    "isolation": "firecracker"
   },
   "pricing": "resource",
   "vcpu_h": 0.0233,
   "ram_gib_h": null,
   "cpu_basis": "active",
   "ram_basis": "alloc",
   "active_floor": 0,
   "ram_per_vcpu": [
    null,
    null
   ],
   "ram_fixed_per_vcpu": null,
   "vcpu_options": null,
   "min_vcpu": null,
   "max_vcpu": 32,
   "max_ram_gib": 112,
   "sizes": null,
   "pool_tiers": null,
   "requires_always_on": false,
   "always_on_month_per_instance": null,
   "commit_note": null,
   "min_billed_seconds": 0,
   "granularity_s": 1,
   "start_fee": 0,
   "boot_overhead_s": null,
   "multiplier": 1,
   "windows_vcpu_h": null,
   "gpu": null,
   "note": "Reserve a small CPU floor (min 0.125 vCPU) and let the VM auto-burst: billed CPU per second = max(reserved, consumed) at the same rate (burst is a separate 'CPU (burst)' invoice line, measured from the cgroup). Encoded as active basis with floor 0 (the 0.125 vCPU floor is negligible). vCPU rate DERIVED from the docs worked example (525 burst vCPU-s ~ $0.0034 => ~$0.0233/vCPU-h; rounding band $0.0230-0.0237). Memory billed on reservation (hard ceiling) but the RAM rate is NOT published. Burst ceiling above the reservation undocumented. Not available to new organizations. [basis verified 2026-09-28] Docs: \"Your reserved vCPU is the billing floor and is always charged while the sandbox runs.\" / \"CPU actually consumed above the floor bills as a separate CPU (burst) invoice line\" / \"Memory bills on the reservation\" (docs.run.cloud/sandboxes/index.md). Per-second billed CPU = max(reserved, consumed): kept \"active\" (engine \"max\" means pay the full requested size); floor 0 because the 0.125 vCPU default floor is ~3% of 4 vCPU. Idle auto-pause via SDK idlePauseSeconds (\"set it to 0 to disable automatic pause\", computesdk run-cloud README); paused billing ambiguous."
  },
  {
   "key": "reserved",
   "label": "Linux microVM, full CPU reserved (deprecated)",
   "flags": [
    "legacy"
   ],
   "os": [
    "linux"
   ],
   "regions": null,
   "gpu_only": false,
   "features": {
    "isolation": "firecracker"
   },
   "pricing": "resource",
   "vcpu_h": 0.0233,
   "ram_gib_h": null,
   "cpu_basis": "alloc",
   "ram_basis": "alloc",
   "active_floor": 0,
   "ram_per_vcpu": [
    null,
    null
   ],
   "ram_fixed_per_vcpu": null,
   "vcpu_options": null,
   "min_vcpu": null,
   "max_vcpu": 32,
   "max_ram_gib": 112,
   "sizes": null,
   "pool_tiers": null,
   "requires_always_on": false,
   "always_on_month_per_instance": null,
   "commit_note": null,
   "min_billed_seconds": 0,
   "granularity_s": 1,
   "start_fee": 0,
   "boot_overhead_s": null,
   "multiplier": 1,
   "windows_vcpu_h": null,
   "gpu": null,
   "note": "Same rate; reserving the full vCPU count makes the reservation the billing floor for the whole run regardless of utilisation. Only useful to guarantee capacity (reserved CPU counts against the 100-vCPU org cap; burst does not). Never cheaper than floor-burst. [basis verified 2026-09-28] Docs: \"You are billed per second of runtime against the resources you reserved.\" (docs.run.cloud/sandboxes/index.md)."
  }
 ],
 "storage": {
  "included_disk_gib": null,
  "disk_gib_month": null,
  "disk_billed_when_stopped": null,
  "snapshot_gib_month": 0,
  "paused_ram_billed": null
 },
 "network": {
  "egress_free_gib": null,
  "egress_gib": null,
  "ipv4_month": null,
  "ipv4_available": false
 },
 "plans": [
  {
   "name": "Pay as you go",
   "fee": 0,
   "flags": [
    "legacy"
   ],
   "fee_is_credit": false,
   "included_usd": 15,
   "per_seat": 0,
   "concurrency": 100,
   "max_session_h": null,
   "max_vcpu": 32,
   "max_ram_gib": 112,
   "sizes_allowed": null,
   "note": "Only plan. First $15 of usage free every month once a payment method is added (applies to sandbox burst too); $5 of usage allowed with no card. Org caps: 100 sandboxes (incl. paused/stopped, not destroyed), 100 reserved vCPU, 400 GiB reserved RAM, 100 tunnels; raisable by operators. Unpaid-usage ceiling $500 with card (prepaid credit raises it; owner can set a lower spend limit); hitting it stops active sandboxes. Sandboxes are closed to new organizations."
  }
 ],
 "free": {
  "monthly_credit": 15,
  "one_time_credit": 5
 },
 "extras": [
  {
   "item": "iOS simulator / Android emulator session (current product)",
   "price": "$0.02 per active minute ($1.20/h); $15/month free = 750 minutes"
  },
  {
   "item": "Xcode builds",
   "price": "Free during beta"
  },
  {
   "item": "Snapshot storage",
   "price": "Not metered today ($0)"
  }
 ],
 "features": {
  "linux": true,
  "windows": false,
  "macos": false,
  "arm64": null,
  "gpu": false,
  "gpu_types": [],
  "snapshot": "fs",
  "pause_resume": true,
  "fork": true,
  "persistent_disk": true,
  "volumes": null,
  "auto_stop_idle": true,
  "max_session_h": null,
  "custom_image": true,
  "docker_inside": null,
  "nested_virt": null,
  "root": true,
  "systemd": null,
  "browser": null,
  "desktop": true,
  "computer_use": true,
  "code_interpreter": false,
  "agent_harnesses": false,
  "ssh": true,
  "public_ipv4": false,
  "inbound_https": true,
  "custom_domain": true,
  "raw_tcp_inbound": null,
  "egress_allowlist": null,
  "static_egress_ip": null,
  "private_network": null,
  "self_host": false,
  "byoc": false,
  "open_source": false,
  "regions": null,
  "soc2": null,
  "hipaa": null,
  "sso": null,
  "lang_python": null,
  "lang_node": null,
  "lang_go": null,
  "lang_rust": null,
  "lang_java": null,
  "gpu_desktop": false,
  "credential_injection": null,
  "egress_http_rules": null,
  "wake_on_request": null,
  "live_resize": null,
  "fork_running": null,
  "memory_snapshot_fork": false,
  "webhooks": null,
  "scheduled_wakeups": null,
  "audit_logs": null,
  "eu_data_residency": null,
  "zero_data_retention": null,
  "scoped_api_keys": null,
  "spend_limits": true,
  "mcp_server": null,
  "isolation": "firecracker",
  "image_oci": true,
  "snapshot_auto": true,
  "snapshot_on_demand": true,
  "harness_api": false,
  "ingress_rules": true,
  "guest_firewall": true,
  "secret_proxy": false,
  "volume_attach": false,
  "volume_shared": false,
  "fast_boot": false,
  "usage_api": false
 },
 "perf": {
  "cpu_runs_s": 14.73,
  "cold_start_ms": null,
  "burst_tti_ms": 15832.11,
  "dax_s": null
 },
 "perf_source": "StarSling hpc-sandbox-benchmarks, run 36498291449 (2026-09-29), Node.js V8 Web Tooling p50 at a 4 vCPU / 8 GB target",
 "knobs": [],
 "caveats": [
  "DEPRECATED: Linux microVM sandboxes are no longer available to new organizations (docs banner, 2026-09-28); removal date unpublished. Both modes and the plan are flagged legacy.",
  "vCPU rate $0.0233/h is derived from a rounded docs example (75 vCPU-s ~ $0.0005 floor, 525 vCPU-s ~ $0.0034 burst); no rate card is published. Band ~$0.0230-0.0237.",
  "Memory is billed on reservation but its rate is unpublished (ram_gib_h null): any estimate is CPU-only and understates the bill.",
  "Whether paused/stopped sandboxes bill anything is ambiguous: docs say billing is 'per second of runtime' but also 'billing stops when the sandbox is destroyed', and paused/stopped sandboxes keep consuming org capacity slots.",
  "Snapshot storage 'is not metered today' ($0), with a hint it may change. Disk quota is configurable but disk price unpublished.",
  "Egress, ingress, IPv4 prices unpublished; inbound only via expiring tunnel hostnames (default TTL 1 h).",
  "Free: $5 without a card; $15/month with a card (encoded as one-time 5 + monthly 15; whether they stack is unclear).",
  "Current run.cloud product is mobile simulators at $0.02/active minute (listed in extras, not a Linux sandbox mode).",
  "Only benchmark: burst TTI median 15.8 s at 100 concurrency; every DAX run failed."
 ],
 "sources": [
  "https://docs.run.cloud/sandboxes/index.md",
  "https://docs.run.cloud/sandboxes/run-sandbox.md",
  "https://docs.run.cloud/sandboxes/snapshots.md",
  "https://docs.run.cloud/limits.md",
  "https://docs.run.cloud/billing/access-control.md",
  "https://run.cloud/pricing/",
  "https://raw.githubusercontent.com/computesdk/computesdk/main/packages/run-cloud/README.md",
  "https://www.computesdk.com/benchmarks/sandboxes/burst-tti/"
 ],
 "fleet": {
  "default_max_instances": 0,
  "default_max_vcpu": 0,
  "default_max_gpus": null,
  "raise": "none",
  "raise_time_days": null,
  "verification": null,
  "tiers": "Legacy-only organization limits were 100 retained sandboxes, 100 reserved vCPU and 400 GiB RAM; not offered to new organizations.",
  "notes": "Official limits page now explicitly deprecates Linux microVM sandboxes and closes them to new organizations. New-customer fleet is unavailable (0), regardless of historical quotas. iOS/Android/Xcode products unaffected but are not this card. Legacy quota reviews require org ID, requested numbers, workload/duration, deadline and billing/capacity review; no SLA.",
  "sources": [
   "https://docs.run.cloud/limits.md"
  ],
  "researched": "2026-09-28"
 },
 "audit_2026_09_29": {
  "applied": 6,
  "source": "checked against the provider's live pricing and docs pages"
 },
 "feature_evidence": {
  "snapshot_auto": {
   "value": true,
   "source": "https://docs.run.cloud/sandboxes/secrets.md",
   "quote": "Pausing writes the sandbox's RAM to disk, and archiving uploads it, so both hold whatever the sandbox held.",
   "note": "Trigger: idle auto-pause (`idlePauseSeconds` / `--idle-pause <seconds>`: 'Pause after inactivity; use `0` to keep the sandbox running', https://docs.run.cloud/cli/latest.md). Pause keeps disk AND memory (SDK: 'Halt the sandbox, keeping disk and memory; compute billing stops.', https://docs.run.cloud/sdk/latest.md); `sandbox shell` auto-resumes a paused sandbox, exec needs an explicit resume. Paused sandboxes may be 'archived' (RAM uploaded). What happens at the `--timeout` lifetime (default 300 s) is not documented (likely destroy, not pause). Deprecated product, closed to new orgs.",
   "checked": "2026-09-29"
  },
  "snapshot_on_demand": {
   "value": true,
   "source": "https://docs.run.cloud/sandboxes/snapshots.md",
   "quote": "A snapshot captures a sandbox's filesystem so you can restore it later.",
   "note": "Filesystem only (no memory; secrets held in memory are not included). Restore 'produces a **new** sandbox with its own id. The snapshot is not consumed, so one snapshot can fan out into as many sandboxes as you need' (fork/template). Snapshot storage 'not metered today'. Manual pause/resume separately preserves memory for the same sandbox, but is not forkable.",
   "checked": "2026-09-29"
  },
  "harness_api": {
   "value": false,
   "source": "https://docs.run.cloud/compute/boxes.md",
   "quote": "Persistent sandboxes boot `runcloud/agent-base`, which ships Node.js, Python, and SSH but no coding-agent CLIs. Install the one you want after connecting",
   "note": "Full SDK/CLI reference (sdk/latest.md, cli/latest.md) exposes only create/exec/readFile/writeFile/tunnels/snapshot/pause for sandboxes; no agent-session API. 'Agent skills' are instructions for YOUR local coding agent to drive run.cloud, not a harness API. Claude Code must be installed manually via SSH.",
   "checked": "2026-09-29"
  },
  "ingress_rules": {
   "value": true,
   "source": "https://raw.githubusercontent.com/computesdk/computesdk/main/packages/run-cloud/README.md",
   "quote": "Tunnel hostnames are random bearer capabilities. Do not write them to public logs.\nThey expire automatically and are removed when the tunnel or sandbox is deleted.",
   "note": "Nothing is exposed by default; you choose the port. Two models: short-lived random-hostname tunnels (`openTunnel(id, port, { ttlSeconds })`, default TTL 1 h, max 8 per sandbox) and a stable public `<name>-box.run.cloud` hostname (`sandbox expose --port`, one per sandbox, custom domains) that appears to have no auth. SSH is carried 'over an authenticated connection' without opening port 22. No IP allowlists/security groups documented. Desktop noVNC URLs are signed temporary bearer URLs with a view-only mode.",
   "checked": "2026-09-29"
  },
  "guest_firewall": {
   "value": true,
   "source": null,
   "quote": null,
   "note": "Firecracker microVM 'with its own kernel, not a container' (sandboxes/index.md) and the card has root; whether the guest kernel ships nftables/iptables modules is not documented.",
   "checked": "2026-09-29",
   "derived": true
  },
  "secret_proxy": {
   "value": false,
   "source": "https://docs.run.cloud/sandboxes/secrets.md",
   "quote": "Anything running in the sandbox can read the sandbox's secrets.",
   "note": "Secret groups are delivered as plain env vars in every exec and as files under the home directory (held in memory, not on disk, so not captured in snapshots/forks). No injecting proxy.",
   "checked": "2026-09-29"
  },
  "volume_attach": {
   "value": false,
   "source": "https://docs.run.cloud/sdk/latest.md",
   "quote": "| `disk` | `number` | Writable disk quota in GiB. |",
   "note": "Only a per-sandbox writable disk quota (`--disk <gb>` 'Set root disk capacity in GiB'); the complete CLI and SDK references list no volume/mount noun.",
   "checked": "2026-09-29"
  },
  "volume_shared": {
   "value": false,
   "source": "https://docs.run.cloud/cli/latest.md",
   "quote": "Sandboxes are the single compute noun.",
   "note": "No shared volume or bucket mount in the CLI/SDK references; sharing state is done via snapshots (fan-out copies, not a shared live FS).",
   "checked": "2026-09-29"
  },
  "fast_boot": {
   "value": false,
   "source": "https://www.computesdk.com/benchmarks",
   "quote": "burst of 100: p95 31046 ms, 100% started",
   "note": "ComputeSDK sandbox benchmark 2026-09-25",
   "checked": "2026-09-25"
  },
  "usage_api": {
   "value": false,
   "source": "https://docs.run.cloud/sdk/latest.md",
   "quote": "usage({ orgId? }) returns Promise<UsageReport>. UsageReport.items contains cumulative usage entries with org_id, meter, and seconds.",
   "note": "granularity: per-organization; cost: no; SDK-based API only; no REST endpoint documented. Linux microVM sandboxes deprecated and closed to new orgs; mobile simulators (iOS/Android) are the current product. Usage reports metrics (seconds/meter), not cost; separate account balance API exists but usage endpoint provides quantities only.",
   "confidence": "high",
   "checked": "2026-10-01"
  }
 },
 "locations": [],
 "locations_source": "https://docs.run.cloud/sandboxes/index.md",
 "locations_quote": "Linux microVM sandboxes are deprecated. This capability is being retired and is no longer available to new organizations.",
 "locations_checked": "2026-10-01"
}