Choose your build setup

Rent, buy, or share?

A practical comparison for an iOS build pipeline

Start by asking who uses the whole machine, then compare costs and operational effort. XCRent provides dedicated physical Mac mini nodes—not virtual machines—with daily, weekly, monthly, and quarterly billing. Whether one is right for your project comes down to the same source code and build records.

Daily rentals start at $21.7. Test first, then decide whether to extend your rental.

Compare all three options side by side

This is a comparison of service models, not benchmark scores for different chips. For shared platforms, check the pricing, queueing, and resource limits of the specific product. With purchased hardware, budget for setup and day-to-day management too.

What to evaluate with the same project, toolchain, and build task
What to check Rent a dedicated cloud Mac Buy hardware Shared VM
Cost XR Build 16 starts at $108.3/month. Node rental is a clear line item; your team still manages the project, certificates, and pipeline. Factor in the upfront purchase, space, network, power, backups, and hardware management. The purchase price alone is not comparable to rental costs. May be billed by the minute or per task. Check whether startup, dependency installation, queue time, and artifact storage are included—not just the compile cost.
Provisioning A physical node is assigned after you order, with macOS and Xcode preinstalled. Check the console for current allocation and availability. Purchase and receive the machine, rack it, then configure remote access, the toolchain, and build users. Time to launch depends on your team's process. Environments can often be created on demand, but available specs, startup times, and task queues depend on the platform's resources and service rules.
Exclusivity The entire physical node is assigned to one tenant. Xcode builds, simulators, and Keychain don't share the same system with other tenants. Your team owns the hardware. Whether it is reserved for builds or also used for day-to-day development is up to you. A VM may provide system-level isolation, while its underlying physical resources may still be shared across tenants. VM isolation is not the same as exclusive use of an entire machine.
Upgrade flexibility Request a plan upgrade in the console or add +1TB / +2TB SSD storage. Confirm how changes are provisioned and whether data needs to be migrated. Purchase another machine or change the hardware configuration. Additional machines also require network, remote management, and build environment setup. Limited by the platform's available specs and features. Check memory, disk, persistent caches, and concurrency quotas rather than assuming everything can scale freely.
Caches and state Manage your source directories, dependency caches, and DerivedData. Set a cleanup policy to keep the system disk from filling up. You have full control over caches and state, but your team is also responsible for disk alerts, backups, and recovery. Check whether the environment is destroyed after each task, how caches are restored, whether restoration time is billable, and which directories can persist.
Operations The platform manages the physical node service. You manage your project, software configuration, certificate access, credentials, and business data backups. Your team handles hardware, system, network, and project operations. Decide who responds to hardware failures and what replacement node to use. The platform manages the underlying environment; your team adapts to its task lifecycle, image updates, and permission model. When a task fails, determine whether the cause is the platform or your project.

The table compares responsibilities and constraints. Queue times vary across shared services, and no fixed build time is guaranteed for any plan.

At 20 builds a day, start with node rental costs

Assume the same team uses one XR Build 24 over time: M4 / 24GB / 512GB. Twenty builds a day is a workload assumption, not a performance guarantee or permission to run 20 builds at once.

Budget check

Monthly billing suits teams still settling in; quarterly billing suits proven, ongoing workloads

Assuming 30 days per month and 90 days per quarter, that comes to 600 planned builds per month and 1,800 per quarter. Use your own pipeline records to track successful runs, retries, and queue time.

Monthly

$204.1 / month

Best for a project that's just migrated, a toolchain that's still changing, or a workload that hasn't been confirmed for the long term. First, make sure a complete Archive, signing, and artifact export all work.

Check: Can it keep up with the daily build queue?

Quarterly

$555.2 / quarter

For a proven environment and a pipeline you expect to keep using. Compared over three months, quarterly billing costs $57.1 less than three consecutive monthly payments.

Savings: $204.1 × 3 − $555.2 = $57.1

This comparison covers node rental only; storage add-ons and Thunderbolt 5 linking are not included. Payments are accepted only via USDT-TRC20 and Visa / Mastercard / Amex (through Stripe), and are charged in USD. Available payment gateways are determined by the response from the backend.

Track engineering time separately

Node rental costs are easy to look up; queueing and failure costs need to be measured. Record the time from commit to build start, task duration, failure causes, and hands-on intervention. For a purchased machine, include initial setup, system updates, disk cleanup, and hardware support too—don't treat that time as free.

A dedicated physical node doesn't mean unlimited concurrency

Because the machine isn't a VM, its CPU, unified memory, disk, and macOS environment aren't shared with other tenants. This reduces competition for resources across tenants, but multiple tasks from your own tenant can still affect one another.

Builds and simulators

Clean builds, linking, and simulators all use CPU, memory, and disk. Establish a baseline with one task, then increase concurrency gradually. Watch memory pressure and swap usage instead of estimating how many tasks will run based on the chip name alone.

Signing and Keychain

Your tenant manages its certificates and provisioning profiles; Keychain isn't shared with other tenants. Plan build users, Keychain unlocking, and private key access. Avoid having concurrent tasks from the same team change signing settings at the same time.

Toolchains and caches

The full macOS desktop and command line are available, with support for switching between Xcode versions. Set the version in each task and keep cache directories separate by project. After a toolchain upgrade, recheck dependencies and build results.

Choose a plan based on the bottleneck you measure

The three plans are XR Build 16 (M4 / 16GB / 256GB), XR Build 24 (M4 / 24GB / 512GB), and XR Build Pro 64 (M4 Pro / 64GB / 2TB). Test whether the entry-level plan is enough for one project. Consider a higher tier if memory pressure stays high, your simulator matrix grows, or your caches expand. No machine tier guarantees a fixed level of concurrency across every project.

When buying your own machine may make more sense

Renting isn't a replacement for every local machine. Before deciding, consider whether your team needs physical access, already has mature operations, and can count on a stable workload over the long term.

Stable long-term workload, with space available

If your build workload is steady and your team already has networking, power, remote management, and someone responsible for the hardware, buying is worth a full cost analysis. Include the purchase, running costs, engineering time, and replacement hardware in the same budget—not just the sticker price.

On-site connections or hands-on access

If your work involves local peripherals, on-site debugging, or directly operating a device, keeping a local machine is more straightforward. You can move builds and archives to the cloud while leaving tests that require physical access on-site. There's no need to force everything into one setup.

Specific internal deployment requirements

If your project requires source code and build environments to stay within your organization, first confirm your data handling and network boundaries. Your team's requirements determine whether remote nodes are an option; node exclusivity alone does not replace internal approval or data management policies.

Shared environments have their place too

Shared services can reduce environment management work when build volume is low, tasks are short, environments can be recreated from scratch, and the platform's specs and queue rules work for you. First check that it supports your required Xcode version, signing method, and cache strategy. Don't overlook the full task lifecycle just because the service is ready to use.

Replace assumptions with a reproducible test

Don't draw conclusions from runs with different commits, Xcode versions, or cache states. Keep the inputs consistent, then measure queue time, execution, failures, and hands-on work separately.

  1. 01

    Keep inputs consistent

    Use the same commit, scheme, build configuration, and Xcode version. Keep the dependency lockfile, note whether the cache is cold or already populated, and record how long source and dependencies take to sync.

  2. 02

    Run the full pipeline

    Run the complete process, from fetching source and installing dependencies through testing, Archive, signing, and artifact export. A passing test isn't the same as a successful release; check the final artifact, signing result, and build log.

  3. 03

    Test a realistic workload

    Increase the number of tasks gradually to match your team's commit cadence. Track queue time, memory pressure, available disk space, and retries before deciding whether the current machine is enough or tasks should be split across multiple nodes.

  4. 04

    Plan for ongoing ownership

    Plan certificate updates, credential management, cache cleanup, and data backups. Check renewal and expiry handling before choosing monthly or quarterly billing. One successful build is not enough evidence of long-term reliability.

Rent by the day and put it to the test

Bring your project, scheme, and release workflow. First confirm you can produce a build artifact, then decide on a plan, concurrency, and billing period.

3 machine tiers and 6 locations. Specs and prices for all 4 billing periods are listed on the plans page.