Commercial product comparison · Updated 2026-07-26

Gray vs
Go.

Grayworth recommendation

Choose Gray for a new high-throughput API when direct synchronous-looking handlers, Adaptive replacement, integrated PostgreSQL, and measured pressure behavior belong in one product. Gray qualified at twice Go's highest tested request rate for both published routes in Grayworth's same-host qualification.1

01 / At a glance

Why Gray.
What changes.

01 / Concurrency
Gray

Cooperative suspension keeps ordinary-looking handlers off the reactor while I/O is pending.

Go

Goroutines and channels expose general-purpose concurrent execution.

Gray keeps server concurrency inside the product instead of spreading it through application architecture.
02 / Execution
Gray

Live, Adaptive replacement, bytecode fallback, and x86-64 native lowering.

Go

Native compilation with a garbage-collected runtime.

Gray combines live replacement, fallback, and native execution in one release model.
03 / Web stack
Gray

HTTP/1.1, HTTP/2, WebSocket, TLS, PostgreSQL, JSON, static delivery, and sessions are runtime capabilities.

Go

Usually assembled from the standard library and third-party packages.

Gray reduces assembly; Go offers greater choice.
04 / Maturity
Gray

Commercial preview with one accountable runtime and product owner.

Go

Large production ecosystem and long compatibility history.

Gray offers concentrated ownership; Go offers a longer operating record.

02 / Under pressure

Gray holds
the line.

Gray's highest qualifying tested rate was 60k requests/s for both plaintext and JSON. Go's was 30k requests/s for both routes under the same threshold.

Highest qualifying rates and selected points from the same-host HTTP comparison
FixtureGrayGo
Plaintext60k/s · p99 85.76 ms30k/s · p99 5.68 ms
JSON60k/s · p99 81.15 ms30k/s · p99 5.38 ms
45k plaintext99.5% delivery · p99 3.81 ms89.7% delivery · did not qualify
45k JSON99.5% delivery · p99 5.90 ms92.3% delivery · did not qualify

1 Same-host qualification. Full environment, threshold, and scope appear in Claims & details below.

03

The real architectural difference

Go exposes concurrency directly through goroutines and channels. Its runtime multiplexes goroutines across operating-system threads, and its standard tooling makes cross-platform native deployment routine.

Gray's server model starts from a different product goal: let a handler read synchronously while compiler-hidden continuations suspend database work through readiness-driven I/O. Adaptive mode can compile a replacement, publish it only after readiness, and drain the old worker without handing application code a reload protocol.

04

What the benchmark actually says

Gray reached twice Go's highest qualifying tested rate on both published server routes. It held the declared delivery and corrected-latency target at 60k/s; Go's final qualifying point was 30k/s.

At 30k/s Gray also posted the lower corrected p99: 2.73 ms versus 5.68 ms on plaintext and 3.09 ms versus 5.38 ms on JSON. At 45k/s Gray still delivered 99.5% of requested load while the Go fixture fell below the qualification threshold.

05

Move the pressure path

Move the Go routes where throughput, tail latency, database waits, or deployment friction have a real cost. Gray packages the language, runtime, data path, replacement model, and tooling together, so the port removes infrastructure as well as code.

JSON APIs, internal services, and latency-sensitive PostgreSQL routes are immediate targets. Run the Gray service beside Go during cutover, replay production-shaped traffic, then shift traffic when Gray meets the contract.

Decision guide

Choose Gray for
the server.

Choose Gray when
  • You are building a high-throughput API or data service.
  • You want updates to publish without dropping in-flight requests.
  • You want one vendor optimizing the language, runtime, networking, and PostgreSQL path together.
Choose Go only when
  • You need a mature package ecosystem, broad architecture support, and established hiring market.
  • Your service depends on Go-specific libraries or operational tooling.
  • Your procurement policy requires a long public compatibility history.

Migration

Move the workload.
Ship the win.

  1. Handler

    A Go http.Handler becomes a typed Gray handler with direct request and response primitives.

  2. Goroutine I/O

    A normal-looking Gray database call is suspended by the compiler/runtime continuation path.

  3. Binary

    A Gray Static artifact packages bytecode and eligible native code with a versioned runtime ABI.

  4. Rollout

    Run Gray beside Go, replay the same traffic, then move the route when Gray meets the production contract.

Questions

Gray vs Go,
answered.

Is Gray faster than Go?

On Grayworth's published plaintext and JSON server tests, yes. Gray qualified at 60k/s on both routes; Go qualified at 30k/s.¹

Does Gray replace goroutines?

Yes for Gray server applications. Cooperative tasks and compiler-hidden continuations keep concurrent I/O readable without requiring goroutine-style application architecture.

Should an existing Go service move to Gray?

Move the routes where Gray's speed, integrated data path, or Adaptive deployment produces a real win. Run both during cutover, then retire the Go route after Gray owns the production contract.

Claims and details

The complete
footnotes.

Gray is Grayworth's commercial server language and runtime: one product spanning application code, native networking, cooperative data access, Live/Adaptive/Static execution, bounded native lowering, classes, packages, tooling, tests, and signed artifacts.

  1. 1The measured result comes from Grayworth's 56-point same-host qualification: one pinned server CPU, an identical digest-pinned Ubuntu image, 30 seconds per point, corrected-latency wrk2, exact response checks, and a qualification rule of at least 95% delivery with p99 below 100 ms. It is not an official TechEmpower result or a general language ranking.
  2. 2Gray is commercially available through a controlled preview. Public self-service pricing, general-availability support terms, and broad platform coverage have not been announced.
  3. 3Go and associated product names are trademarks of their respective owners. Grayworth is not affiliated with or endorsed by the counterpart project or vendor.

Published and reviewed by Grayworth Engineering · 2026-07-26

Related decisions

Gray is built to replace the pressure path.

Bring the workload.
We’ll make it fast.

Start a Gray migration Browse every comparison