Migrating production infrastructure? Get up to ₹10,000 in migration credits. Apply now
voroaBlog
Key Value

Valkey vs Redis in 2026: Licence, Speed and Which to Pick

· · 10 min read

Valkey vs Redis in 2026, compared on licence, speed and features, with a benchmark we ran

Valkey vs Redis is mostly a licence story with a performance argument attached. Valkey is the open source fork of Redis that started in 2024 when Redis changed its licence; both speak the same protocol and your client library works with either. This guide is for developers deciding which one to run or which one a host should run for them. It covers what actually differs in November 2026, what we measured when we benchmarked the latest release of each on the same machine, and when the choice matters at all.

On this page

Advertisement

The short answer

For caching, sessions, rate limits and queues, Redis and Valkey behave the same and perform the same on small machines. Pick Valkey if you want a permissive BSD licence and lower managed prices. Pick Redis 8 if you need its built-in JSON, search and vector features, or Redis Ltd’s own cloud and support. If a host runs one for you, the engine rarely changes your code.

How one database became two

Redis was BSD-licensed open source for 15 years. Then the licence changed, a fork followed, and both projects have shipped steadily since.

Timeline: March 2024 Redis announces RSALv2 and SSPLv1 from 7.4; March 2024 Valkey forks Redis 7.2.4 under the Linux Foundation; September 2024 Valkey 8.0 with I/O threads; May 2025 Redis 8 adds AGPLv3; October 2025 Valkey 9.0; October 2026 Redis 8.10.3 and Valkey 9.1.3

When What happened
March 2024 Redis announces a move from BSD to a dual RSALv2 / SSPLv1 licence, starting with 7.4. Neither is an open source licence.
March 2024 Contributors fork the last BSD release, 7.2.4, and start Valkey under the Linux Foundation.
September 2024 Valkey 8.0 ships with a new I/O threading design.
May 2025 Redis 8 adds AGPLv3, an open source licence, as a third option, and folds JSON, time series, probabilistic types and the query engine into the core.
October 2025 Valkey 9.0 adds hash field expiration and atomic slot migration for clusters.
May 2026 Valkey 9.1, announced as a security and performance release.
26 October 2026 The latest releases at the time of writing: Redis 8.10.3 and Valkey 9.1.3.

So both are open source again, in different ways. Redis offers a copyleft licence (AGPLv3) next to its source-available ones. Valkey stays permissive (BSD-3-Clause).

Side by side: what differs in November 2026

Redis Valkey
Licence RSALv2, SSPLv1 or AGPLv3, your choice BSD-3-Clause
Governed by Redis Ltd Linux Foundation, many companies
Latest release 8.10.3 (26 Oct 2026) 9.1.3 (26 Oct 2026)
Protocol and core commands RESP2 / RESP3 Same
Hash field expiry Since 7.4 Since 9.0, same API
JSON, Bloom filters, search Built into the core since Redis 8 Separate modules (valkey-json, valkey-bloom, valkey-search), shipped together as valkey-bundle
Vector similarity Vector sets data type (added in Redis 8 as beta) and the query engine valkey-search module
Reads data files from Its own versions Redis up to 7.2
Managed by the big clouds Redis Cloud; Azure Managed Redis AWS ElastiCache and MemoryDB, Google Memorystore, Aiven and many smaller hosts

The everyday commands you use for a cache or a queue (GET, SET, EXPIRE, INCR, lists, hashes, sorted sets, streams, pub/sub, Lua scripts) are the same in both. What a managed store adds on top of the engine (backups, TLS, password rotation) is covered in managed databases on Voroa.

We benchmarked both on the same machine

Most comparison pages repeat headline numbers like “1 million requests per second” or “37% faster” without saying where they came from. Valkey’s own 1.19 million figure was measured with 8 I/O threads on a 64-core AWS machine. Most apps run on something much smaller, so we tested that.

Setup. We built Redis 8.10.3 and Valkey 9.1.3 from source and ran both inside the same Linux virtual machine (WSL2) on a 4-vCPU laptop. That is a modest, noisy machine, which is part of the point: it is closer to a small cloud instance than a 64-core benchmark rig. We gave the server 2 CPU cores and the benchmark client 2 other cores, and turned persistence off on both. The same client (redis-benchmark) sent 1,000,000 commands per run with 50 connections, 256-byte values and 100,000 random keys. We ran every test 5 times and report the median. Measured 7 November 2026.

Bar chart: median requests per second on a 2-core server - without pipelining Redis 116k SET and 111k GET, Valkey 116k SET and 114k GET; with 16-command pipelining Redis 687k SET and 868k GET, Valkey 742k SET and 770k GET

Test (2 cores, 1 I/O thread) Redis 8.10.3, median (range of 5 runs) Valkey 9.1.3, median (range of 5 runs)
SET, one command at a time 116,469 /s (109k-134k) 115,969 /s (57k-134k)
GET, one command at a time 110,951 /s (110k-116k) 114,090 /s (106k-115k)
SET, 16 commands per round trip 687,285 /s (641k-884k) 742,391 /s (637k-760k)
GET, 16 commands per round trip 868,056 /s (722k-908k) 770,416 /s (645k-840k)

What we found.

  1. On a small server it is a tie. The differences are 13% at most, and they flip direction from test to test. The ranges above overlap in every test: Redis’s own five SET runs with pipelining spread from 641k to 884k, far wider than the gap between the two engines.
  2. Pipelining beats the engine choice by a mile. Sending 16 commands per round trip gave 6 to 8 times the throughput on both. If your app is slow on Redis, batch your commands before you change engines.
  3. I/O threads need spare cores. With 2 I/O threads on the same 2 cores, both engines got slower without pipelining. GET fell from 110,951 to 91,819 per second on Redis and from 114,090 to 90,818 on Valkey, and the five-run ranges did not overlap (88k-94k against 106k-116k). Valkey’s threading gains appear when the server has cores to spare, which a small instance does not.
  4. Memory use is the same. In a separate run that wrote 200,000 random keys with 256-byte values (about 126,000 distinct keys after repeats), Redis used 48.1 MB and Valkey 48.7 MB.

This is a small-machine test on purpose. On a large instance with many cores and many clients, the threading work in Valkey 8 and later can open a real gap; if that is your scale, test on your own hardware.

Where the two are no longer interchangeable

For most apps the switch is invisible. These are the places it is not:

  • Data files from Redis 7.4 and later. Valkey reads RDB and AOF files from Redis up to 7.2. A snapshot written by Redis 7.4 or 8 cannot be loaded into Valkey directly. Move the data by replication or by copying keys instead.
  • Redis 8’s built-in types. Vector sets (VADD, VSIM and friends) exist only in Redis. JSON, Bloom filters and search exist in Valkey as modules, so check that your host loads them before you rely on them.
  • Redis Ltd’s own products. Redis Cloud features such as Redis Flex and Active-Active are Redis only.
  • Client libraries. Every major Redis client works with Valkey. Valkey also publishes its own client, GLIDE, but you do not need it.

Which licence affects you

If you use the database inside your own app: neither licence costs you anything or asks anything of you. Running Redis 8 or Valkey behind your SaaS, your API or your mobile app is free under every option.

If you change the database’s own source code: under AGPLv3, if users interact with your modified version over a network, you must offer them your changes. Valkey’s BSD licence has no such condition. Very few teams modify the database itself.

If you sell the database as a hosted service: this is what RSALv2 and SSPLv1 were written to restrict. It is why AWS, Google and many smaller hosts moved to Valkey. The details are on the official Redis licence page.

Cost: where the engine changes the bill

The engine affects price mainly on the big clouds. On AWS ElastiCache, Valkey is priced 20% lower than Redis OSS on node-based clusters and 33% lower on serverless, and the serverless minimum is 100 MB for Valkey against 1 GB for Redis OSS (ElastiCache pricing). For a small cache that minimum is often the biggest number on the bill.

On smaller hosts you usually pay for memory and do not choose the engine at all. Our free Redis hosting comparison lists what each free tier limits and where it runs.

Which one to pick

  • A cache, sessions, rate limits or a job queue: either. Pick the one your host offers in the region closest to your users; distance matters far more than the engine.
  • You want a permissive licence and a vendor-neutral project: Valkey.
  • You want vector search or JSON without loading modules: Redis 8.
  • You are on AWS or Google Cloud: Valkey, for the lower price and because that is where the managed service is going.
  • You want Redis Ltd’s support or Redis Cloud features: Redis.
  • You use BullMQ, Sidekiq or Celery: either should work, since they rely on core commands and Lua scripts, which both support; run your test suite before you switch. Run the consumer as a background worker in the same region as the store.

Switching from Redis to Valkey

  1. Check the source version. From Redis 7.2 or earlier, a snapshot loads straight into Valkey. From 7.4 or 8, plan to replicate or copy keys.
  2. Check for Redis-only commands. Search your code for vector set commands and module commands (JSON., FT., BF.) and confirm the target has them.
  3. Change the URL, not the client. Point your existing client at the new address. Run your test suite.
  4. Watch memory and eviction for a day. Make sure the new instance has the same maxmemory and eviction policy as the old one.

On Voroa, a key value store is Redis-compatible: your existing client connects with the URL you copy from the database page, and nothing else in your code changes. Moving existing data in is covered in importing an existing database, and connection details are in the Key Value guide.

Run a Redis-compatible store next to your app

Whichever engine you prefer, what decides speed for an app in India is distance. Voroa runs a Redis-compatible key value store in Mumbai beside the services you deploy, billed in rupees with a GST invoice, with a free size to start. See the sizes on the managed Redis page.

FAQ

Is Valkey a drop-in replacement for Redis? For Redis up to 7.2 and for everyday commands, yes. Clients, commands and the protocol are the same. Data files from Redis 7.4 and later, and Redis 8’s built-in vector sets, are the exceptions.

Is Valkey faster than Redis? On our 2-core test, no: the two were within 13% of each other and the winner changed from test to test. Valkey’s published gains come from I/O threads on large many-core machines.

Is Redis still open source? Redis 8 and later can be used under AGPLv3, which is an open source licence. Redis 7.4 was source-available only. Redis 7.2 and earlier are BSD.

Why did AWS and Google move to Valkey? Redis’s 2024 licences restrict offering Redis as a managed service. Valkey’s BSD licence does not, so AWS, Google and many smaller hosts now run Valkey. Azure’s managed offering is Redis.

Will my BullMQ, Sidekiq or Celery setup work on Valkey? They should. They rely on core commands and Lua scripts, which Valkey supports. We have not tested each library on Valkey, so run your own test suite before you switch.

Should I use Valkey or Redis for a new project in India? Choose by host and region first. A store in Mumbai next to your app will be faster than either engine in Singapore. Distance matters more than the engine.

Last updated: 7 November 2026. We re-check versions and re-run the benchmark when a major release ships. Found something out of date? Write to support@getvoroa.com.

Advertisement