TESSERA
The edge runtime for WebAssembly

Tessera runs your WebAssembly modules in 300 cities on a runtime that starts from a memory snapshot — microseconds, not seconds. No containers to keep warm, no regions to choose, no cold-start tax on the first request of the day. You push a .wasm file; we put it 12 milliseconds from every user on Earth.

  • 0.8ms median cold start
  • 300 edge cities, one deploy
  • Any language that compiles to WASM
router-edge — deploy
$ tessera deploy ./router.wasm
↑ uploaded 1.2 MB · sha256 verified
↑ AOT-compiled to native · 41 ms
↑ snapshotted · replicated to 300 PoPs
✓ live in 300 cities · 4.6 s
→ https://router.tessera.run

  cold start  p50 0.8ms   p99 3.1ms
  invocations 41.2M / min  across 300 PoPs

Running in production at engineering teams that count milliseconds

NorthwaveCartographHadron MediaSift LabsMeridian BankGreenlinePallas AIVoxa
The runtime

A complete runtime at the edge,not a sandboxed subset.

Most edge platforms hand you a stripped-down language and a list of things you cannot do. Tessera runs the full WebAssembly System Interface — threads, sockets, filesystem, clocks — so the binary that runs on your laptop runs unchanged in Frankfurt.

Microsecond cold starts

Every module is ahead-of-time compiled to native machine code and snapshotted to a memory image. A new instance restores from that image in under a millisecond — no JIT warmup, no container scheduling, no penalty on the first request of the day. The first user sees the same latency as the millionth.

Full WASI, not a subset

Sockets, filesystem, clocks, random, and threads — the complete system interface. If your code compiles to WebAssembly, it runs on Tessera without a proprietary shim or a rewritten standard library.

Any language, one target

Rust, Go, C, C++, Zig, Swift, AssemblyScript — and Python or JavaScript via component builds. You compile to .wasm; we run it. No per-language runtime to pin a version of and maintain.

Capability-based isolation

Each module receives exactly the capabilities you grant it and nothing else. No ambient access to the host, no shared memory between tenants — isolation enforced at the WebAssembly boundary by the runtime, not by a shared OS process.

Deterministic across the network

Same input, same output, in every PoP. A module that passes on your laptop behaves identically in production, which makes edge code something you can actually test before you ship it.

Measured across the network, under production load

0.8ms
Median cold start
300
Edge cities
12ms
Median user latency
8.1T
Requests / month
Day-two operations

One command to deploy.Every invocation, traced.

Tessera is a runtime, but it ships like a product. One CLI, one config file checked into your repo, and a console that shows what every module is doing in every city — observability that does not stop at the region boundary.

One command, global

tessera deploy pushes your module to all 300 cities atomically, in seconds. Roll forward, roll back, or pin a version per region from a single config file in version control.

Per-invocation tracing

Every request returns a trace with CPU time, peak memory, and the exact PoP that served it. Find the one slow city before a user files the ticket.

Sub-second rollback

Every deploy is content-addressed and immutable. Roll back to any prior version across the whole network in under a second — no rebuild, no re-upload, no pipeline to wait on.

Production parity, locally

tessera dev runs the exact production runtime on your machine — same isolation, same WASI surface, same CPU and memory limits. What you debug locally is byte-for-byte what runs at the edge.

What teams build on it

Four kinds of work the edge does better.

When compute lives 12 milliseconds from the user and starts instantly, whole categories of backend work move off your origin and onto the network.

Sub-ms decisions

Routing & middleware

Auth, A/B splits, header rewrites, geo-routing, and rate limits — running at the first hop, before a request ever reaches your origin, in microseconds, in code you control.

Per request

Personalization at the edge

Render the right page variant, inject the correct currency, or assemble a feed from edge-cached data with no round trip to a central region. The user sees their version on the first byte.

Tokenize & gate

Inference preprocessing

Tokenize, validate, and batch requests at the edge before they reach an expensive model. Drop the malformed ones, cache the repeats, and trim the origin GPU bill at the door.

No servers

Origin-free APIs

Stand up an entire JSON API as a WebAssembly module backed by an edge key-value store. No servers to scale, no region to lose — it lives on the network and starts cold in under a millisecond.

From the engineers who run it

Teams that moved off containers, on why they did.

We were paying for warm containers in five regions just to dodge cold starts. We moved the router to Tessera, deleted the warming cron, and p99 fell from 240ms to 14ms. The runtime simply has no cold-start problem to engineer around.

P
Priya Raman
Principal Engineer, Northwave

Full WASI was the deciding factor. Every other platform made us rewrite our crypto library against their sandbox. Tessera ran our existing Rust binary unchanged on the first try — that alone gave us back a quarter of roadmap.

T
Tomas Lindqvist
Staff Backend Engineer, Cartograph

Production parity sold the team. tessera dev runs the same runtime as the edge, so debugging stopped being guesswork. We catch the PoP-specific bugs on a laptop now, not in an incident channel at 2am.

A
Awa Diallo
Platform Lead, Hadron Media
Pricing

Pay for compute, not for idle.

Billed per millisecond of execution and per million requests. Nothing for idle time, nothing per region, no minimum spend to reach all 300 cities.

Hobby

For side projects and prototypes.

$0/mo
  • 1M requests / mo
  • 100 GB-s compute / mo
  • All 300 edge cities
  • Community support
  • tessera.run subdomain
Most popular

Pro

For production workloads that scale.

$0.18/M req
  • Usage-based, no minimum
  • Per-invocation tracing
  • Custom domains with managed TLS
  • Edge KV store included
  • 99.99% uptime SLA
  • Email and chat support

Enterprise

For high-volume and regulated edges.

Custom
  • Volume compute pricing
  • Dedicated PoP capacity
  • Private network peering
  • SSO, SCIM, and audit logs
  • Named solutions engineer
  • Data-residency controls

What engineers ask before they migrate

How is a cold start actually under a millisecond?

Every module is ahead-of-time compiled to native code and captured as a memory snapshot. Starting an instance restores that snapshot — there is no language runtime to boot, no JIT to warm, and no container to schedule. Across the network the p50 is 0.8ms and the p99 is 3.1ms, idle or not.

Which languages can I deploy?

Anything that compiles to WebAssembly with WASI: Rust, Go, C and C++, Zig, Swift, AssemblyScript, plus Python and JavaScript via component builds. You ship a .wasm artifact, so there is no per-language runtime for us to support or for you to pin a version of.

Is this real WASI or a limited subset?

The full WebAssembly System Interface — sockets, filesystem, clocks, random, and threads. Code that links the standard library and runs locally runs on Tessera unchanged. There is no proprietary sandbox API to port your application to.

How are tenants kept isolated?

Isolation is capability-based and enforced by the runtime, not by a shared OS. Each module gets only the capabilities you grant it, runs in its own linear memory, and cannot reach the host or another tenant. The WebAssembly boundary is a tighter seal than an OS process.

Can I test against the real edge before I ship?

Yes. tessera dev runs the identical production runtime on your machine — same WASI surface, same isolation, same CPU and memory limits. A module that behaves locally behaves the same in all 300 cities, so edge code stops being something you can only debug in production.

What happens when a city goes offline?

Traffic fails over to the nearest healthy PoP automatically, with no change on your side. Because every deploy is content-addressed and replicated to all cities, there is no primary region to lose — the network routes around the outage and your module keeps serving.

Put your code 12 milliseconds from everyone.

Compile a module, run tessera deploy, and watch it go live in 300 cities in seconds. Free to start — no card, no sales call, no region to choose.