Pricing
Note: A Free plan will be available in the near future.
Pricing plans for Earthly CI
Hobby
For small projects
$
9
Sign Up
14-day free trial
Includes 1,000 minutes +500 mins per active
user
Up to 5 active users
XS, S, and M satellites
7 days cache retention
Community support
Starter
For small teams
$
29
Sign Up
14-day free trial
Includes 2,000 minutes +750 mins per active
user
Up to 15 active users
XS, S, M, L, and XL satellites
14 days cache retention
Community support
Static originating IP address
ARM satellites
Team
For large teams
$
49
Sign Up
14-day free trial
Includes 10,000 minutes +1000 mins per active
user
Up to 50 active users
XS, S, M, L, and XL satellites
21 days cache retention
5x8 support
Static originating IP address
ARM satellites
AWS Marketplace billing available (annual only)
Enterprise
For enterprise
Contact Us
Contact Us
Fully managed single-tenant satellite fleet
Unlimited active users
XS, S, M, L, and XL satellites
Unlimited logs retention
24/7 support
Dedicated IP address
ARM satellites
Single sign-on
Self-hosted satellites (coming soon)
Compute Pricing
Instance type
Specs
Price per minute
Included minutes multiplier
linux/amd64
xsmall
AWS t3.small
2 vCPUs | 2 GB RAM
16 GB cache disk
16 GB cache disk
$0.0011 per min.
4X
1000 min included = 4000 min on xsmall
1000 min included = 4000 min on xsmall
small
AWS t3.medium
2 vCPUs | 4 GB RAM
32 GB cache disk
32 GB cache disk
$0.0021 per min.
2X
1000 min included = 2000 min on small
1000 min included = 2000 min on small
medium
AWS t3.large
2 vCPUs | 8 GB RAM
65 GB cache disk
65 GB cache disk
$0.0042 per min.
1X
1000 min included = 1000 min on medium
1000 min included = 1000 min on medium
large
AWS t3.xlarge
4 vCPUs | 16 GB RAM
130 GB cache disk
130 GB cache disk
$0.0084 per min.
0.5X
1000 min included = 500 min on large
1000 min included = 500 min on large
xlarge
AWS t3.2xlarge
8 vCPUs | 32 GB RAM
260 GB cache disk
260 GB cache disk
$0.0168 per min.
0.25X
1000 min included = 250 min on xlarge
1000 min included = 250 min on xlarge
linux/arm64
xsmall
AWS t4g.small
2 vCPUs | 2 GB RAM
16 GB cache disk
16 GB cache disk
$0.0010 per min.
4X
1000 min included = 4000 min on xsmall
1000 min included = 4000 min on xsmall
small
AWS t4g.medium
2 vCPUs | 4 GB RAM
32 GB cache disk
32 GB cache disk
$0.0020 per min.
2X
1000 min included = 2000 min on small
1000 min included = 2000 min on small
medium
AWS t4g.large
2 vCPUs | 8 GB RAM
65 GB cache disk
65 GB cache disk
$0.0039 per min.
1X
1000 min included = 1000 min on medium
1000 min included = 1000 min on medium
large
AWS t4g.xlarge
4 vCPUs | 16 GB RAM
130 GB cache disk
130 GB cache disk
$0.0079 per min.
0.5X
1000 min included = 500 min on large
1000 min included = 500 min on large
xlarge
AWS t4g.2xlarge
8 vCPUs | 32 GB RAM
260 GB cache disk
260 GB cache disk
$0.0158 per min.
0.25X
1000 min included = 250 min on xlarge
1000 min included = 250 min on xlarge
Pricing FAQ
What is an active user?¶
An active user is a user that has triggered a Satellite build at least three times during a month. Triggering a
build can be done by either performing a Satellite build directly via the earthly CLI, or indirectly, by pushing
code to a repository, and that push being picked up by a CI that uses a Earthly Satellites to perform the build.
How are active users tracked?¶
The number of active users is tracked by monitoring who triggered the build. The build may be triggered either
directly by the user in their terminal, or indirectly by a CI system. In the latter case, the triggering user is
inferred via commit metadata. The triggering user does not have to be a user registered with Earthly.
In some cases, if the triggering user cannot be inferred from commit metadata, then the user logged into
Earthly CLI in the CI run is used as the triggering user.
A triggering user becomes an active user if they trigger the build at least three times during a month.
At the end of a billing cycle, if the number of paid users is greater than the number of active users, the
difference is refunded to the user in the form of statement credit.
If you would like to estimate the number of active users that a project uses, please check out the
github.com/earthly/lib/billing+active-users target.
What is ease-in pricing?¶
Ease-in pricing allows you to pay the price of lower tiers for the first few active users of the higher tier. This
prevents drastic bill increases when jumping from one tier to the next.
What is zero-margin compute?¶
Zero-margin compute is a pricing model where the cost of compute is passed on directly to the user, without any
profit-generating margin. This allows us, the CI vendor, to better align our incentives with the end-user. Slow
builds should not mean more profit for us.
How much does compute cost?¶
The cost of compute is based on the AWS rack price for the instances that are used underneath, plus the cost of
cache storage and the cost of network ingress/egress incurred. All of these costs are packaged as an all-inclusive
per-minute cost and is then passed on directly to the user, without any profit-generating margin.
What are Satellites?¶
Satellites are single-tenant remote runners managed by the Earthly team. Satellites power the Earthly CI backbone, and as such, every pipeline created runs on its own dedicated satellite. Satellites may also be created manually, to be used as remote executors in development workflows.
A subscription to Earthly Satellite allows you to use only satellites directly, without the Earthly CI web interface or automated GitHub triggers. Common use-cases for using standalone satellites include:
- Using satellites on top of a traditional CI, in order to take advantage of the Earthly caching and parallelization capabilities without switching the CI system to Earthly CI
- Using satellites in local development workflows in order to share compute and cache with colleagues
- Using satellites in order to execute x86 builds on ARM (or Apple Silicon) machines, or vice-versa
A subscription to Earthly CI allows access to both the CI capabilities, and also to the standalone satellite capabilities.
What is the Satellite-only package?¶
Satellites are remote runners managed by the Earthly team. The Satellite-only package contains the same
features and limits of the respective CI tier, except that it does not include the CI functionality.
Satellites can be used via the Earthly CLI, either from developer machines or
from a traditional CI, but they do not trigger automatically from GitHub activity the way a CI would.
To read more about Satellites visit the Earthly Satellites product page.
How is my usage of Satellites tracked?¶
The usage of Satellites is tracked by monitoring the Satellites for active builds. If there are no active builds,the
Satellite goes to sleep automatically after some time. When a Satellite is asleep, it is not billed for compute.
When a build is started, the Satellite is woken up automatically and billed for compute.
How many Satellites do I need?¶
The number of Satellites depends on the amount of workload they need to handle. For maximum performance, you can
create a different Satellite for each CI pipeline. In some setups, where the CI pipelines are small, that might be
an overkill. The best method to determine the number of satellites is to start with one or two, and add more as
needed.
Earthly prints information on build startup about how loaded the Satellite is currently. This can be used as a guide
to determine if more Satellites are needed.
Can I use the Starter or Team tiers if I have a small team?¶
Yes, but you have to pay for 5 seats minimum for Starter, and 15 seats minimum for Team, even if you are only using
a few active user seats.