---
title: Val Town
slug: val-town
url: "https://toolweight.com/options/val-town"
homepage: "https://val.town"
categories: sandbox-providers
last_verified: 2026-01-15
license: CC-BY-4.0
---

# Val Town

> Deno isolates that run TypeScript on HTTP, cron and email triggers.

Val Town runs small TypeScript programs in Deno isolates with HTTP, cron and email triggers, plus built-in SQLite and blob storage. It is not a general sandbox, no root, no Docker, no long-running processes, but for evaluating a snippet of model-generated TypeScript behind an HTTP endpoint it starts faster and costs less than anything with a kernel. Treat it as the isolate end of the spectrum.

## Identity

|  |  |
| --- | --- |
| Name | Val Town |
| Company | Val Town |
| One-liner | Deno isolates that run TypeScript on HTTP, cron and email triggers. |
| Site | https://val.town |
| Docs | https://docs.val.town |
| Founded | 2022 |
| Funding | Seed |
| Brand | https://toolweight.com/vendors/Val Town |
| Compared in | 1 |

## Where it is compared

### [Sandbox providers](https://toolweight.com/compare/sandbox-providers)
Ranked **#19 of 20** on default weights.
| Field | Value | Confidence | Verified | Source | Note |
| --- | --- | --- | --- | --- | --- |
| Cold start | 150 ms | Inferred | - | - | Estimate for an HTTP val's first request after idle. Isolates start fast because there is no kernel to boot. |
| Cold start (claimed) | - | Unknown | - | - | - |
| Isolation | v8-isolate | Vendor-claimed | 2026-01-15 | https://docs.val.town | Deno isolates. |
| Root in guest | ○ | Vendor-claimed | 2026-01-15 | https://docs.val.town | - |
| Egress control | proxy-logged | Inferred | - | - | Outbound fetch is available and observable; no fine-grained per-val allowlist. |
| Max runtime | 5 min | Inferred | - | - | Vals are request-scoped with a timeout measured in minutes, not a long-running process host. |
| Persistent FS | ○ | Vendor-claimed | 2026-01-15 | https://docs.val.town | No filesystem. SQLite and blob storage are provided instead. |
| Snapshot & fork | ○ | Inferred | - | - | Forking a val copies source, not runtime state. |
| Custom images | ○ | Vendor-claimed | 2026-01-15 | https://docs.val.town | - |
| GPU | ○ | Inferred | - | - | - |
| Runtimes | javascript-typescript | Inferred | - | - | - |
| Preview URLs | ● | Vendor-claimed | 2026-01-15 | https://docs.val.town | Every HTTP val gets a public URL by default. |
| Browser inside | ○ | Inferred | - | - | - |
| File up/download | ◐ | Inferred | - | - | Blob storage API rather than a sandbox filesystem. |
| Sydney region | ○ | Inferred | - | - | - |
| Concurrent limit | - | Unknown | - | - | Concurrency is limited by request rate on a plan, not by a sandbox count. |
| MCP server | ● | Inferred | - | - | Val Town has leaned into MCP for driving vals from agents. |
| SDKs | typescript, rest-api, cli | Inferred | - | - | - |
| Streaming output | ◐ | Inferred | - | - | Logs are visible; there is no exec-stream primitive. |
| Price / hour | - | Unknown | - | - | Subscription plus usage limits rather than compute-hours; the hourly comparison does not apply. |
| Meter | subscription | Vendor-claimed | 2026-01-15 | https://www.val.town/pricing | - |
| Idle cost | free-when-stopped | Inferred | - | - | Idle vals cost nothing. |
| GitHub stars | - | Inferred | - | - | - |
| Funding | seed | Community-reported | - | - | - |
| Shipped | 2022 | Inferred | - | - | - |
| Positioning | Write and deploy TypeScript in the browser, triggered by HTTP, cron or email. | Inferred | - | - | - |

**Verdict.** Here as the isolate benchmark: no kernel, no filesystem, no shell, and consequently the fastest and cheapest way to run a snippet of model-written TypeScript behind a URL. The moment your agent needs to run npm install and inspect the result, you have outgrown it.

## Alternatives

- [ascii](https://toolweight.com/options/ascii), Agent orchestration over Telegram, running on box's VM infrastructure.
- [Blaxel](https://toolweight.com/options/blaxel), Agent-first cloud claiming ~25 ms microVM boots from snapshots.
- [box](https://toolweight.com/options/box), Persistent Linux VMs with SSH, per-VM IPv4 and disk-level forking, priced flat.
- [Cloudflare Sandbox](https://toolweight.com/options/cloudflare-sandbox), Container sandboxes driven from a Worker, addressed through Durable Objects.
- [CodeSandbox SDK](https://toolweight.com/options/codesandbox-sdk), Firecracker VMs with memory snapshots, from the online IDE, now owned by Together AI.
- [Daytona](https://toolweight.com/options/daytona), Sub-second container sandboxes for agent workloads, from a team that built a dev-env manager.
- [Self-hosted Firecracker](https://toolweight.com/options/diy-firecracker), The baseline: Firecracker on your own metal, plus every hard part you now own.
- [E2B](https://toolweight.com/options/e2b), Open-source Firecracker sandboxes with Python and TypeScript SDKs for AI agents.
- [exe.dev](https://toolweight.com/options/exe-dev), Persistent VMs you SSH into, with root, apt and systemd, on a flat monthly plan.
- [Fly.io Machines](https://toolweight.com/options/fly-machines), Raw Firecracker microVMs with a REST API, durable volumes and 35+ regions.
- [Freestyle](https://toolweight.com/options/freestyle), Run untrusted JavaScript and full dev servers, with git hosting and domains built in.
- [GitHub Codespaces](https://toolweight.com/options/github-codespaces), Devcontainer-backed cloud VMs built for humans, occasionally repurposed for agents.

## Licence and attribution

Data from toolweight (https://toolweight.com), licensed CC-BY-4.0.

- Licence: [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/)
- Canonical HTML: https://toolweight.com/options/val-town
- Machine-readable: https://toolweight.com/options/val-town.md · https://toolweight.com/api/v1 · https://toolweight.com/mcp
- toolweight takes no affiliate revenue and sells no placements. Corrections: https://toolweight.com/suggest
