fshy / CI runners / Compute / Storage
Buildkite
buildkite.com · CI runners, Compute, Storage · 4 records · JSON
- Buildkite Free CI runnerscaveatemailno cardDrequest-rate
- Buildkite Computecaveatemailno cardDvolume-quota
- Buildkite hosted agents Computecaveatemailno cardDrequest-rate
- buildkite artifacts Storagefails: quotaemail?card?R
Buildkite Free CI runners
caveatemailno cardDrequest-rate
| Free tier | 5 users, 10 concurrent jobs and 2,000 Linux vCPU-minutes a month, plus 250,000 test executions a month unit minutes; metered on wall-clock |
|---|---|
| Price | USD 0.004 per vCPU-minute |
| Per-object cap | no published per-job cap; the metered unit is the vCPU-minute |
| Retention | builds and artifacts persist per pipeline settings; the vCPU-minute pool is monthly |
| Egress | usage is billed per vCPU-minute; no separate egress charge is published free_allowance: 2,000 vCPU-minutes price_per_tb: USD 0.004 per vCPU-minute beyond |
| Identity | email email signup; no card on Free |
| Limits | |
| Binding | request-rate |
| Interface | git, cli an agent you run, with Buildkite as the control plane; the bk CLI and a REST API |
| Tooling | the buildkite-agent binary on your own host, plus hosted agents on paid plans |
| Composes with | the control plane is free and the agents are yours, so the free tier is a scheduler rather than a machine: pair it with a free VM and the vCPU-minute pool becomes irrelevant |
| Reliability | no reliability event recorded |
| Notes | 2,000 vCPU-minutes is 33 vCPU-hours, and a 4-vCPU job spends four minutes of pool per wall-clock minute. The self-hosted agent path is the one that matters, because it removes the pool entirely. |
| Evidence rung | documented the pricing page was read today and lists the Free column explicitly. |
| Checked | 2026-10-23 (live); stale on 2026-11-22 |
| Parsed numbers |
|
Evidence (2)
| date | source | what it proved |
|---|---|---|
| 2026-10-22 | buildkite.com/pricing | the Free column: 'Up to 2,000 Linux vCPU minutes per month', 'Up to 250k test executions per month', 10 concurrent agents with 10 included, 5 users; Pro includes 4,000 Linux vCPU minutes |
| 2026-10-22 | buildkite.com/pricing | Free: up to 5 users, up to 10 concurrent jobs, up to 2,000 Linux vCPU-minutes a month; hosted agents at USD 0.004 per vCPU-minute, metered to the second with no minimum |
Unknown or withheld values (1)
$.reliability_notenone-observed
Buildkite Compute
caveatemailno cardDvolume-quota
| Free tier | Quoted from the Free plan: 'Up to 5 users', 'Up to 10 concurrent jobs', 'Up to 2,000 Linux vCPU minutes per month', 'Up to 250k test executions per month', and 'No credit card required'. The hosted-agent limits table makes the machine explicit: 'Linux vCPU minutes per month | ... | Free | Up to 2,000' and 'Linux vCPU concurrency | ... | 20 vCPU'. Quoted from the Linux hosted-agent page: 'The Free plan only provides access to small-sized instance shapes.' The small shape is LINUX_AMD64_2X4, quoted as 'Small | AMD64 | 2 | 4 GB | 47 GB'.unit minutes; metered on wall-clock; The unit is a vCPU-minute, not a wall-clock minute. At the only shape the Free plan offers, 2 vCPU, 2,000 vCPU-minutes is 1,000 wall-clock minutes, or 16 h 40 min a month. |
|---|---|
| Price | none stated |
| Per-object cap | not applicable |
| Retention | Quoted: 'Once the job is complete, regardless of its exit status, the virtualized environment and all of its associated data, including data it generated during job execution, is removed and destroyed.' Cache volumes are the exception and are persisted across jobs. |
| Egress | not published on any page read: no egress quota, shaping tier or per-byte price is stated for Buildkite hosted agents |
| Identity | email Quoted from the Free plan: 'No credit card required', and from the signup block: 'Start Free or Pro with 30 days of the all-access trial. No credit card or commitment.' No card, no hold and no phone is stated as required anywhere read. The account limits are 'Organizations per day | Default: 4 organizations' and 'Unverified emails per user | Default: 5 emails', which implies an email-verified account is the gate. |
| Limits |
The 2,000 vCPU-minute pool is the ceiling: 1,000 wall-clock minutes a month on the only shape the Free plan allows, which is 33 minutes a day. The 4-hour job timeout does not bind before it. |
| Binding | volume-quota 2,000 vCPU-minutes is 1,000 wall-clock minutes on the only shape the Free plan offers, which is 33 minutes a day: the month runs out long before the 4-hour job timeout does. |
| Interface | unknown inferred from the tooling the provider documents; not probed |
| Tooling | not stated |
| Composes with | None worth composing. The one thing Buildkite gives free that the others do not is the 10-job concurrency, which is only useful once the caller already has machines, and the client has none. |
| Reliability | no reliability event recorded |
| Notes | This corrects the corpus's own record, which said Buildkite supplies 'the scheduler and the agent binary' and that 'the machine the agent runs on is the customer's, or a Buildkite-hosted agent on a paid plan', and which recorded no shape. That was wrong on 2026-10-24: Buildkite's own limits table gives the Free plan 2,000 Linux vCPU-minutes of hosted agents and 20 vCPU of concurrency, and its Linux hosted-agent page restricts the Free plan to the small 2 vCPU / 4 GB / 47 GB shape. So Buildkite does sell a free machine, it is 2 vCPU and 4 GB, and it needs no card. The corpus also had the arithmetic backwards: it priced the pool against a 4 vCPU agent, but a Free-plan namespace cannot select one. At 2 vCPU the pool is 16 h 40 min a month, not 8 h 20 min. Not established: the egress term; whether a hosted agent can be reached inbound (no page read says it can, and the environment is destroyed at job end); and whether the 2,000 vCPU-minutes includes the boot time of the agent, which the limits page says consumes concurrency 'from the time it starts booting' but does not say whether it consumes minutes. |
| Evidence rung | documented the 2,000 vCPU-minutes, the 20 vCPU concurrency, the 4-hour Free-plan job timeout and 'No credit card required' are quoted from buildkite.com/pricing and buildkite.com/docs/platform/limits read today; the 2 vCPU / 4 GB / 47 GB shape and the Free-plan shape restriction are quoted from the Linux hosted-agent page read today. |
| Checked | 2026-10-25 (live); stale on 2026-11-24 |
| Parsed numbers |
|
Evidence (9)
| date | source | what it proved |
|---|---|---|
| 2026-10-22 | buildkite.com/pricing | 'Free Plan ... Up to 5 users, Up to 10 concurrent jobs, Up to 2,000 Linux vCPU minutes per month, Up to 250k test executions per month', and 'No credit card required'; Pro includes '4,000 Linux vCPU minutes per month' |
| 2026-10-24 | buildkite.com/pricing | quoted, Free plan: 'For solo developers and small teams', '$ 0', 'No credit card required', with 'Up to 5 users', 'Up to 10 concurrent jobs', 'Up to 2,000 Linux vCPU minutes per month', 'Up to 250k test executions per month' |
| 2026-10-24 | buildkite.com/docs/platform/limits | quoted, hosted agents limits table: '| Linux vCPU concurrency | 24 vCPU | 20 vCPU | 256 vCPU | Custom |' and '| Linux vCPU minutes per month | 4,000 included | Up to 2,000 | 4,000 included | Volume discounts |' |
| 2026-10-24 | buildkite.com/docs/platform/limits | quoted: 'the Free plan's 20-vCPU Linux limit supports up to 10 Small Linux machines at 2 vCPU each' |
| 2026-10-24 | buildkite.com/docs/platform/limits | quoted: 'Job timeout | The maximum time before a running job will time out. Default: 4 hours on the Free plan. Unlimited on Pro and Enterprise plans' |
| 2026-10-24 | buildkite.com/docs/agent/buildkite-hosted/linux | quoted: 'only provides access to small-sized instance shapes' (the sentence is 'The [Free plan](https://buildkite.com/pricing/) only provides access to small-sized instance shapes.' with the plan name as a link) and the shape table row '| LINUX_AMD64_2X4 | Small | AMD64 | 2 | 4 GB | 47 GB |', plus 'To accommodate different workloads, instances are capable of running up to 8 hours.' |
| 2026-10-24 | buildkite.com/pricing/feature-comparison | quoted, the Hosted Agents block for the Free column: 'Up to 2,000 mins/month', 'Small only', 'Up to 20 vCPU' |
| 2026-10-24 | buildkite.com/docs/pipelines/hosted-agents | quoted: 'Once the job is complete, regardless of its exit status, the virtualized environment and all of its associated data, including data it generated during job execution, is removed and destroyed. For Linux and macOS hosted agents, any cache volume data is persisted.' |
| 2026-10-24 | buildkite.com/docs/pipelines/hosted-agents | quoted: 'Hosted agents are provisioned on demand and destroyed after each job, providing clean, reproducible builds' |
More fields (20)
{
"wave2": {
"class": "ci-runner-capacity",
"free_tier_kind": "monthly-vcpu-minute",
"shape": {
"vcpu": null,
"ram_gib": null,
"gpu_class": null,
"gpu_count": 0
}
},
"shape": {
"vcpu": 2,
"ram_gib": 4,
"disk_gib": 47,
"gpu_class": null,
"gpu_count": null,
"note": "`LINUX_AMD64_2X4`, the only shape the Free plan offers, quoted as 'Small | AMD64 | 2 | 4 GB | 47 GB'. The vendor writes decimal GB; kept unconverted, so 4 GB is about 3.7 GiB and 47 GB about 43.8 GiB. Larger shapes exist (4/16/95, 8/32/158 and up to 64 vCPU) but are paid-plan or Enterprise only."
},
"billing_model": "free",
"term": "none",
"m10h_usd": null,
"m24h_usd": null,
"price_arithmetic": "2,000 vCPU-minutes / 2 vCPU = 1,000 wall-clock minutes = 16 h 40 min a month at USD 0.00. 10 h a day x 30 = 300 h = 18,000 wall-clock minutes = 36,000 vCPU-minutes, eighteen times the pool. 24/7 x 30 = 730 h needs 87,600 vCPU-minutes, forty-four times the pool. Past the pool the rate is USD 0.004 per vCPU-minute on a paid platform plan, so 36,000 vCPU-minutes would be USD 144.00 and 87,600 USD 350.40.",
"free_tier_kind": "monthly-vcpu-minute",
"session_cap": {
"wall_clock_min": 240,
"idle_reap_s": null,
"restart_required": true,
"note": "4 hours per job on the Free plan; the 2,000 vCPU-minute monthly pool runs out far sooner. The environment is destroyed at job end."
},
"concurrency": {
"jobs_at_once": 10,
"note": "20 vCPU of Linux concurrency on the Free plan, and the only shape is 2 vCPU, so 10 machines at once. Quoted: 'the Free plan's 20-vCPU Linux limit supports up to 10 Small Linux machines at 2 vCPU each'."
},
"keep_rate": {
"value": 0.0,
"basis": "the environment is destroyed at job end; cache volumes persist at no stated charge",
"source": "https://buildkite.com/docs/pipelines/hosted-agents"
},
"persistent_storage": {
"included_gib": 0,
"price_gib_month": "not published; cache volumes are 'included at no additional cost' with a 50 GB container cache and 5 GB git mirror default quota",
"durability": "the job environment is destroyed; cache volumes persist across jobs",
"survives_stop": false,
"survives_destroy": false,
"max_retention": "the job, except cache volumes"
},
"network_out": {
"allow_outbound": true,
"allow_inbound_listen": false,
"ports": "none inbound: no page read offers a public address and the environment is destroyed at job end",
"static_ip": false,
"ipv6": null,
"per_session_bytes": null
},
"units": "RAM and disk are the vendor's decimal GB, kept unconverted. 4 GB reads as 4, 47 GB as 47.",
"granularity": {
"min_billed_s": 1,
"rounding_s": 1,
"note": "quoted for the paid rate: 'billed per vCPU minute and metered to the second, with no minimums and no rounding'"
},
"burst_x": 10.0,
"burst_note": "10 concurrent 2 vCPU small machines on the Free plan's 20 vCPU of Linux concurrency. burst_x is that concurrency multiplier over a single runner.",
"census_rows": [
"buildkite"
],
"topic_note": "belongs to ci-cd-runners; recorded here to stop the double count",
"wave3": {
"verified": [
"2,000 Linux vCPU-minutes a month on the Free plan",
"20 vCPU Linux concurrency = 10 small machines",
"the small shape is 2 vCPU / 4 GB / 47 GB",
"4-hour job timeout on the Free plan",
"no credit card required"
],
"corrected": "It does and they are not. The earlier arithmetic also priced the pool against a 4 vCPU agent that a Free namespace cannot select.",
"new": "the shape, the concurrency and the 4-hour Free-plan job timeout, none of which the corpus had"
}
}Unknown or withheld values (6)
$.egress.meteredegress-unknown$.interfaceinterface-unknown$.per_object_cap.notesprocess$.per_object_cap.statednot-applicable$.reliability_notenone-observed$.toolingnot-stated
Buildkite hosted agents Compute
caveatemailno cardDrequest-rate
| Free tier | a Free plan with no card: up to 10 concurrent jobs, 2,000 Linux vCPU-minutes a month and 250,000 test executions a month, plus a 30-day all-access trial unit minutes; metered on wall-clock |
|---|---|
| Price | none stated |
| Per-object cap | not stated |
| Retention | not stated |
| Egress | not stated |
| Identity | email 'No credit card required' on the Free Plan, quoted from buildkite.com/pricing read 2026-10-22 |
| Limits |
not stated |
| Binding | request-rate |
| Interface | unknown |
| Tooling | not stated |
| Composes with | not stated |
| Reliability | no reliability event recorded |
| Evidence rung | documented the pricing page was read on 2026-10-22 and states the Free plan's three caps and that no card is required. The record carried a USD 16 credit that the page does not show |
| Checked | 2026-10-23 (live); stale on 2026-11-22 |
Evidence (2)
| date | source | what it proved |
|---|---|---|
| 2026-10-02 | buildkite.com/pricing | not published |
| 2026-10-22 | buildkite.com/pricing | 'Start Free or Pro with 30 days of the all-access trial. No credit card or commitment.' and the Free Plan's 'Up to 10 concurrent jobs', 'Up to 2,000 Linux vCPU minutes per month', 'Up to 250k test executions per month', 'No credit card required', quoted |
More fields (16)
{
"talaria_m10h_usd": 174.0,
"talaria_m24h_usd": 375.6,
"nemo_m10h_usd": 136.0,
"keep_rate": 1.0,
"keep_rate_basis": null,
"billing_model": "unclassified",
"shape": null,
"session_cap": {
"wall_clock_min": null,
"idle_reap_s": null,
"restart_required": false,
"note": "a job has its own timeout; the monthly vCPU-minute pool is what runs out"
},
"persistent_storage": null,
"network_out": null,
"price_note": null,
"free_tier_kind": "allowance",
"granularity": {
"min_billed_s": 0,
"rounding_s": null
},
"burst_x": 1.0,
"ps": null,
"net": null
}Unknown or withheld values (15)
$.chainingnot-stated$.egress.meteredegress-unknown$.egress.termsnot-stated$.evidence[0].provedprocess$.extras.keep_rate_basisprocess$.extras.price_noteprocess$.interfaceinterface-unknown$.interface_detailwithheld$.limits_notenot-stated$.per_object_cap.notesprocess$.per_object_cap.statednot-stated$.reliability_notenone-observed$.retention.notesnot-extracted$.retention.statednot-stated$.toolingnot-stated
buildkite artifacts Storage
fails: quotaemail?card?R
| Free tier | Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise unit none; metered on none |
|---|---|
| Price | none stated |
| Per-object cap | not recorded |
| Retention | not recorded |
| Egress | not recorded |
| Identity | email (placeholder) not published |
| Binding | none no constraint of a named kind was recorded; the verdict rests on the quota sentence rather than on a named limit |
| Interface | unknown |
| Tooling | not recorded |
| Composes with | not recorded |
| Reliability | Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise |
| Notes | Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise |
| Evidence rung | reported |
| Checked | 2026-10-21 (inherited); stale on 2026-11-04 |
Evidence (3)
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | buildkite.com/docs/pipelines/configure/artifact-retention | Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise |
| 2026-10-21 | buildkite.com/docs/platform/artifact-storage-and-transfer-bi | cited as the basis of the rejection: Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise |
| 2026-10-21 | api.buildkite.com/v2/artifacts | cited as the basis of the rejection: Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise |
More fields (1)
{
"dead_end": {
"failure_class": "retention",
"why": "Metered both ways: storage billed per GB-month and transfer billed per GB beyond plan inclusion, and retention maxes at 7/30/90 days depending on plan. Full custom retention is an Enterprise",
"retry_when": null,
"first_recorded": "2026-10-21"
}
}Unknown or withheld values (15)
$.chainingnot-recorded$.confidence_notewithheld$.egress.termsnot-recorded$.extras.dead_end.retry_whenprocess$.free_tier.notesprocess$.identity_cost.detaildefaulted$.identity_cost.kindidentity-defaulted$.interfaceinterface-unknown$.interface_detailwithheld$.limits_noteprocess$.per_object_cap.notesnot-recorded$.per_object_cap.statednot-recorded$.retention.notesprocess$.retention.statednot-recorded$.toolingnot-recorded