Run containers at residential prices.
What it is
iogrid Compute is a workload-scheduler that places Docker containers on home PCs and Macs that have opted in to share their idle CPU and memory. Workloads run under gVisor (or Kata) with cgroup limits and a read-only root filesystem; provider hosts never see your image internals and your container never sees the host kernel.
Unlike datacenter spot capacity, supply does not evict you when a larger customer arrives — providers earn at the same rate from every workload, so there is no priority bidding war.
How it works
Submit a container
Push an OCI image reference (ghcr.io, docker.io official-images, or your registry with credentials forwarded) plus resource caps and a category tag.
Scheduler picks a provider
The coordinator matches your spec (CPU, RAM, ARM64 vs x86_64, category opt-in) against the live provider pool, weighted by reputation, recent uptime, and load.
Run isolated, stream logs
The provider daemon spins the container under gVisor (or Kata), with cgroup limits, a read-only root filesystem, and no host-network egress. Logs stream back via a signed URL.
Pricing
| vCPU-hour | $0.018 |
| RAM (per GB-hour) | $0.018 |
| Bandwidth included | 50 GB / job |
| Billing granularity | Per second after first minute |
| Minimum spend | None |
| $GRID discount | 20% off list price |
Reference range: $0.02 – $0.10 per vCPU-hour depending on category and region. See the pricing page for volume discounts above $500 / month.
What you can do with it
Web scraping at residential prices
Run headless-browser scrapers in containers that egress through the same mesh — pair with the bandwidth proxy so the requests originate from real residential IPs instead of a flagged datacenter range.
Batch data jobs
Spin a few hundred containers in parallel for ETL, log compaction, or document conversion. ARM64 providers (Apple Silicon, Raspberry Pi clusters) handle media transcoding particularly well at this price point.
CI overflow
Burst GitHub Actions overflow onto iogrid when your minute budget is tight. The same OCI image runs unchanged; point your workflow at the iogrid endpoint when the queue is hot.
Get started
The TypeScript SDK is the fastest path; the same shape works in the Python, Go, and Java SDKs.
import { IogridClient } from '@iogrid/sdk';
const iogrid = new IogridClient({ apiKey: process.env.IOGRID_API_KEY! });
const w = await iogrid.createWorkload({
type: 'DOCKER',
docker: {
image: 'ghcr.io/example/scraper@sha256:abc...',
command: ['./run.sh', '--target', 'amazon.com'],
env: { CONCURRENCY: '4' },
timeoutSeconds: 900,
minCpuCores: 2,
minMemoryMib: 1024,
},
});
for await (const ev of iogrid.streamWorkloadEvents(w.id)) {
console.log(`[${ev.occurredAt}] ${ev.newStatus}`);
}FAQ
- What container runtimes are supported?
- OCI-conformant images from ghcr.io, docker.io official-images, and any custom registry you authorise. The provider daemon runs Docker locally with gVisor or Kata sandboxing — your image does not see the host kernel.
- Can my workload reach the public internet?
- Only through the routed iogrid tunnel, which applies the same anti-abuse filters as the bandwidth proxy. Direct host-network egress is blocked by default.
- What happens if a provider drops mid-job?
- Jobs are restartable. The scheduler re-dispatches to another eligible provider within seconds. You are billed only for completed compute, not for the failed attempt.
- How does pricing compare to spot?
- Roughly half of AWS spot for general-purpose CPU at the time of writing, and without the eviction risk of spot. The trade-off: you bring your own scheduling logic for very large fan-out (we are not Kubernetes).
- Is there a free tier?
- Every new workspace gets $5 of credit. No card required up front; we ask once you exceed it.