NewRegion shifting for Kubernetes

Run the same jobs on a cleaner grid

Sorrel reads the 48-hour carbon forecast for every region you run in, then moves flexible work (training runs, ETL, backups) into the cleanest hours before its deadline. One label on the job. No new pipeline.

Free for 2,000 job runs a month · Installs with one Helm chart

embed-catalog

Batch · 3 h · 22 kW · due 08:00

Carbon intensity forecast · gCO₂e/kWh · ENTSO-E day-ahead

Drag the job to try another start time

100
300
500
Deadline 08:00
Runs
18:00 → 21:00
Done 11 h early
Emissions
31.8 kg CO₂e
Avg 482 g/kWh
At 18:00, like cron
31.8 kg CO₂e
Runs the moment it's submitted
Saved
0%

Wind picks up after midnight. 14:00 is cleaner still, but that's past the deadline.

Platform teams shifting work with Sorrel

  • Halcyon Bio
  • Parcel & Co
  • northwind rail
  • QUILL
  • Ferro Labs
  • Mosswood

How it works

From a cron line to a cleaner run

Sorrel sits next to your scheduler, not in front of it. Jobs keep their manifests, their queues and their owners.

jobs/embed-catalog.yaml+1 line
1+apiVersion: batch/v1
2+kind: CronJob
3+metadata:
4+ name: embed-catalog
5+ annotations:
6+ sorrel.dev/deadline: "08:00"
7+spec:
8+ schedule: "0 18 * * *"
9+ jobTemplate:
10+ spec:
11+ backoffLimit: 2

Also works as an Airflow deadline= argument and a GitHub Actions sorrel/wait@v2 step.

Built for production

Cleaner, without new risk

Every guardrail a platform team asks for in the first call, on by default. Nothing here needs a ticket to turn on.

deadline-guard

Deadlines are hard limits

Sorrel learns each job's p95 runtime and never holds it past the latest safe start. A lower number is never worth a late report.

region-shift

g/kWh now12 jobs → Stockholm

  • Stockholm31 g
  • Paris54 g
  • Dublin182 g
  • Frankfurt341 g
  • VirginiaEU only

Follow the clean region

When residency rules allow, jobs move to the region with the cleanest hour.

reports

Reports auditors accept

Location- and market-based Scope 2 figures per team, in the GHG Protocol format.

spot

Usually cheaper, too

Clean hours overlap with low spot prices. Median change across customers in 2026.

kill-switch
  • ml-trainingWaiting for clean hours
  • data-pipelinesWaiting for clean hours
  • nightly-backupsRuns on submit

Off in one click

Switch a namespace off and its jobs run on submit again. Nothing to migrate back.

Estimate

What would shifting save you?

Three inputs, the same forecasts as the scheduler above. We'd rather under-promise: a flat grid gets a small number.

10,000
500100,000
60%

Training, batch inference, ETL, CI on main. Not your API.

Where it runs today

Avoided every year

6.3t CO₂e

About 10 one-way flights from London to New York.

Get your cluster's real number

Assumes 1.1 kWh per GPU-hour (H100-class node incl. cooling) and 23% lower intensity in the best 3-hour window versus the Frankfurt daily mean.

Halcyon BioProtein models · 6 clusters
“We stopped arguing about which jobs were important enough to move. Sorrel moves all of them, and tells us the one time it couldn't.”
Priya RamanHead of ML PlatformRead the story
Training emissions · t CO₂e / month12 months
training carbon
−41%
missed deadlines
0
to full rollout
1 day

Pricing

Priced per cluster, not per job

Hold as many runs as you like. Start free on one cluster and upgrade when the report convinces you.

Starter

One cluster, to see what your jobs could save.

$0

free, no card

Start free
  • 2,000 job runs a month
  • 1 cluster, 3 regions
  • Deadline guard
  • Weekly email report

Team

Most teams

For platform teams with real deadlines.

$192

per cluster / month, billed yearly

Start a 14-day trial
  • Unlimited job runs
  • All 41 regions
  • Region shifting with residency rules
  • Slack and PagerDuty alerts
  • Scope 2 reports in CSV and PDF

Enterprise

For sustainability teams and their auditors.

Custom

annual contract

Talk to us
  • Everything in Team
  • SSO and SCIM
  • Read-only auditor seats
  • Self-hosted forecast mirror
  • 99.95% uptime SLA
  • Dry-run week before anything is held
  • SOC 2 Type II
  • EU data residency
  • Cancel from the dashboard

Non-profits and research labs get Team for free. Ask us

Questions

What platform teams ask first

Anything else, ask the people who wrote the scheduler. Replies come from an engineer, usually within a working day.

Will this slow down my jobs?

Only jobs you label are held, and never past their deadline minus the p95 runtime we've measured for them. Unlabelled workloads are never touched, and a held job starts immediately if the cluster is about to scale down.

Where does the carbon data come from?

Grid operators: ENTSO-E in Europe, EIA for the US, AEMO in Australia and a dozen others, refreshed every 15 minutes. The 48-hour forecasts are ours, and we publish their accuracy every month.

What does Sorrel need access to?

A scheduler extension in your cluster with read access to pod specs and write access to their start time. Job payloads and data never leave your cloud account.

Can we use the numbers in our CSRD or SECR report?

Reports follow the GHG Protocol Scope 2 guidance with both location-based and market-based figures. Several customers have had them signed off by auditors; we can't promise yours will, but we'll join the call.

What happens if Sorrel goes down?

Held jobs fall back to running on submit. The agent keeps a 48-hour forecast cached in the cluster, so a short outage on our side doesn't change any schedule.

Ten minutes to install

Tonight's run could be the cleaner one

Install the agent, label one job, and read the before-and-after in tomorrow's report.

helm install sorrel oci://charts.sorrel.dev/agent