Code is ready. What do you need for build day?
If you do most of your development on Windows or Linux and only need a Mac to archive, sign, and upload your app, use this guide to check the rental period, toolchain, and connection requirements. TestMini offers dedicated Apple Silicon M4 / M4 Pro machines, with rentals starting at just 1 day and prices from $19.2/day.
Before ordering, check that your setup is ready. If you’re already troubleshooting, include your order number, node, and error message when you submit a support ticket.
Choose a rental period based on how long you need the Mac.
Allow time for restoring your environment, downloading dependencies, building, and checking the app—not just the final archive.
Can I rent a Mac for just one day?
Yes. The minimum rental period is 1 day; there’s no need to start with a weekly or monthly plan. TestMini M4 S features an Apple Silicon M4, 16GB RAM, and a 256GB SSD for $19.2/day. It’s a physical Mac mini dedicated to your use, not a shared desktop environment.
A one-day rental works well if your code and signing assets are ready and you only need to restore the environment and create an iOS archive. If you still need to resolve dependency conflicts, adjust native plugins, or run repeated tests, factor that work into your rental period. Check the console for the latest rental start and end times and instance status.
Which billing period should I choose for a short Mac rental and one build?
Start by estimating how long you need to keep the build environment available. For a single release, consider daily billing. For several days of regression testing, compare the daily and weekly rates. If you’ll archive multiple times within a month and need to keep dependency caches, check the monthly rate. For ongoing use across several months, look at quarterly billing. These are billing options, not different machine types.
For TestMini M4 S, the four billing options are $19.2/day, $51.9/week, $96.1/month, and $261.4/quarter. Compare them against your estimated usage. The daily price does not apply to every billing period, and a longer plan is not a bundle of days you can split up and use whenever you like.
Check that your project will build with the selected memory and disk space before choosing a billing period. Compare all three plans on the plans page.
How do I renew before my rental ends and avoid an interrupted build?
Sign in to the console and check the expiry time and available renewal options in the relevant order or instance details. Pay the quoted amount shown on the page, then confirm that your order status has updated. A payment alone doesn’t mean the renewal is active, especially if it’s awaiting an on-chain confirmation or processing by your card issuer.
Before a long archive, upload, or batch of tests, check how much rental time remains. If your rental is about to expire and payment hasn’t been confirmed, export and back up your existing build artifacts first. Don’t assume a running task will extend your rental automatically. If you run into an issue renewing, submit a support ticket through the console with your order number and payment status.
Your route to Xcode depends on where your project starts.
The macOS graphical interface and command line are available. You’re responsible for preparing project dependencies, signing settings, and application code.
Building iOS with Flutter but don’t have a Mac? Where do I start?
Get your Git repository ready to access, along with the Flutter version used by your project, dependency lockfiles, and signing assets. On the cloud Mac, pull your code and check the Xcode command line tools and Flutter environment. Then install dependencies and build:
flutter doctor -v
flutter pub get
cd ios
pod install
cd ..
flutter build ipa
The expected output is an iOS archive and exported package with the required signing settings. The export location, signing method, and result depend on your project configuration. If a command reports a missing certificate, provisioning profile, or native dependency, resolve the error first. Renting a Mac won’t fix project configuration automatically.
TestMini M4 S is a good starting point for Flutter archiving and signing. Check that your project, dependency caches, and build artifacts will fit on the 256GB SSD. If you need more memory and storage, compare it with TestMini M4 L.
Do I need a Mac to export a Unity iOS app? What comes after exporting on Windows?
You can develop your project on Windows and prepare an iOS project export there. Once you have an Xcode project, you’ll need the macOS Xcode toolchain for the final iOS build, archive, and signing. Transfer the exported project along with its native plugins, dependency notes, and signing assets—not just the Unity scene files.
If the exported project uses CocoaPods, install dependencies as required by the project. Then open the generated workspace, check the build target and signing settings, run Archive, and export the app. IL2CPP, asset size, and native plugins can all affect memory and temporary disk requirements, so you can’t estimate build time from the compressed project size alone.
For large Unity projects with IL2CPP builds, consider TestMini M4 Pro: Apple Silicon M4 Pro, 64GB RAM, and a 2TB SSD. This configuration doesn’t guarantee a fixed build time; plugin compatibility and project errors still need to be checked individually.
What tools do I need for a React Native iOS build?
You’ll typically need the versions of Node, a package manager, Xcode, command line tools, and CocoaPods that match your project. Refer to the version declarations, lockfiles, and native dependency requirements in your repository. Restore the JavaScript dependencies first, install Pods in the iOS project, then use the Xcode workspace for debugging or archiving.
Don’t assume that any version will work just because it has the right tool name. Note your local Node and package manager versions, check the Xcode version and iOS deployment target, and then work through any native modules. A successful simulator run doesn’t mean release signing is configured. Check the archive and export settings before uploading.
TestMini M4 L comes with Apple Silicon M4, 24GB RAM, and a 512GB SSD for Xcode debugging, simulators, and working across multiple projects. For step-by-step help moving your commands, see first-build support. Support can help with connections, setup, and billing questions, but doesn’t write application code or manage your signing assets.
For a responsive desktop, start with your network and node.
Interactive work, background builds, and file transfers have different network needs. One latency figure can’t describe every experience.
How does browser-based remote desktop compare with a VNC client?
With browser access, you don’t need to install a separate client. Sign in to the console, open the remote desktop from your instance details, and use macOS in a browser tab. To use a VNC client, install the software yourself and configure it with the connection details shown in your instance information.
Both methods connect to the same assigned physical machine. Switching clients won’t upgrade the chip or change the node. Browser permissions, keyboard shortcuts, and clipboard behavior may differ from a local desktop. Don’t assume that every file type can be copied both ways or that all files can be dragged directly between your local machine and the remote desktop.
Git is usually the best way to sync a project. Transfer larger files using a connection method available for your instance, and check your connection details before using SSH. A different client can’t eliminate network round-trip time across regions. If the connection feels slow, check your network and display quality settings.
The desktop is lagging. Which node should I try?
Start by choosing a candidate node based on your location and actual network route. The five available nodes are Singapore, Tokyo, Seoul, Hong Kong, and the US East. For interactive Xcode debugging, start with a nearby node. If you’re only starting a build and will retrieve the artifacts later, instant desktop responsiveness may matter less.
Before switching nodes, rule out local Wi-Fi congestion, an upload saturating your bandwidth, and high browser resource usage. Then try lowering remote display quality or using a VNC client. Lower display quality can reduce network load, but it can’t change the physical distance. Changing clients also doesn’t guarantee that you’ll avoid routing issues with your ISP.
Don’t assume your existing order can switch nodes seamlessly while keeping every file. Before moving, back up your project and signing assets, then confirm how to handle the order in a console support ticket. See choosing a node for node coverage and selection details.
Can I expect the listed node latency ranges to match my actual latency?
No. The ranges below are reference figures for each node and its coverage area. They aren’t measurements from your city, network provider, or current time of day, and they aren’t guaranteed service levels.
| Node | Coverage area | Reference round-trip time |
|---|---|---|
| Singapore | Southeast Asia | 20~50ms |
| Tokyo | East Asia | 30~60ms |
| Seoul | Northeast Asia | 30~50ms |
| Hong Kong | Southern China and Southeast Asia | 20~40ms |
| US East | Eastern North America and Western Europe | 25~35ms |
These figures are for reference; your actual results depend on your network connection. Desktop performance also depends on jitter, packet loss, bandwidth, and encoding quality. Slow dependency downloads may be caused by the dependency source rather than Mac build performance. When reporting an issue, include your location, network type, selected node, and what you were doing when it occurred. This helps distinguish network issues from build problems.
Check the plan price, then confirm the payment gateway.
Machine rentals and add-ons are priced separately. All prices are in USD; the payment gateways available to you are those returned by the backend.
Which payment methods are supported, and is the machine ready as soon as I pay?
We accept USDT-TRC20 and Visa / Mastercard / Amex processed through Stripe. Orders are charged in USD. Follow the gateway and payment instructions shown at checkout, and don’t send payment to details that haven’t been confirmed in your order.
For USDT-TRC20, check the network, amount, and recipient details. Card transactions may require verification by the payment gateway and your card issuer. After submitting payment, wait for the console to show confirmation, then check the instance allocation and setup status. On-chain confirmation, issuer processing, and initialization take different amounts of time, so the instance isn’t guaranteed to be ready immediately after you submit payment.
If you’ve been charged but your order status hasn’t updated, keep your order number, transaction hash, or payment receipt and submit a support ticket through the console. Don’t pay again before checking the status, and never include your full card number or verification code in a ticket.
How are SSD upgrades and Thunderbolt 5 multi-machine connections billed?
These are optional add-ons, billed separately from the machine rental. Check the price for each add-on against your selected billing period. A +1TB SSD costs $3/day, $8/week, $14.8/month, or $40.3/quarter. A +2TB SSD costs $6/day, $16/week, $29.6/month, or $80.6/quarter.
Thunderbolt 5 multi-machine connections are priced per machine: $1.7/day, $4.7/week, $8.7/month, or $23.7/quarter. Connecting machines doesn’t automatically combine them into one shared memory space, nor does it make a project run in parallel unless it’s configured for distributed execution.
For example, renting TestMini M4 L at the Tokyo node for 1 day with a +1TB SSD add-on costs $40.9 for the machine and $3 for the add-on, for a total of $43.9 USD. Before ordering, check the available options and itemized prices on the configuration page. After payment, you can find the corresponding records in your console order and billing details.
Take your build artifacts with you and keep signing assets under your control.
The rental disk is for your current work, not long-term backups. Keep your own copies of project files, keys, and exported builds.
What happens to projects and build artifacts on the disk when my rental ends?
Once your rental expires without renewal, you can’t rely on continued access to the instance. Don’t treat its disk as storage you can retrieve files from at any time. Service recovery includes disk erasure. See the Terms of Service and your order status for details. This page doesn’t promise a retention period or recovery after expiry.
Before your rental ends, push your code to your own repository and export your IPA, archive, debug symbols, build logs, and any environment version notes you need to storage you control. Check that the backup is readable and complete before ending your rental. Keeping only the source code may not be enough to reproduce the same release build.
If you still need the machine, renew first and confirm the updated status. If you have questions about the expiry time or erasure rules, submit a support ticket before your rental ends. Don’t wait until the instance is reclaimed to make file recovery part of your release plan.
How do I import certificates and provisioning profiles, and what should I check before my rental ends?
Import only the signing certificate, matching private key, and provisioning profile your project needs. Use a secure transfer method you can verify. Before importing, check the source, expiration date, app identifier, and signing purpose. Configure them according to the prompts in Xcode and Keychain, and never commit private keys to a Git repository.
Keep repository tokens, deployment keys, and temporary credentials for CI limited to the permissions required for the task. Don’t send private certificate keys, export passwords, full connection credentials, or payment verification details to the support email, in screenshots, or as ticket attachments. For troubleshooting, provide redacted errors and configuration details instead.
After building, remove any local signing assets, temporary files, and pipeline registrations you no longer need, and revoke temporary tokens according to your security process. Disk erasure when an instance is reclaimed doesn’t replace revoking remote tokens and access permissions yourself. See the Privacy Policy for details about account and connection log data.
Eight terms you’ll see in rental details and build logs.
Know the difference between a machine, a connection method, and a build step to pinpoint where an issue is happening.
- Physical node
- A service location with Mac hardware and network access. Your node affects the remote connection route, not the build toolchain your project uses.
- Dedicated physical machine
- You use the entire assigned physical Mac during your rental, without sharing its system desktop with other renters. A dedicated machine doesn’t replace backups or careful credential management.
- Not a virtual machine
- Your rented environment runs on an assigned physical Apple Silicon Mac mini, not a virtual system instance carved out of a shared host.
- VNC
- A protocol for viewing and controlling a remote desktop. Configure your client with the instance connection details. Desktop responsiveness still depends on your network and display settings.
- Browser-based remote desktop
- A way to access remote macOS from the console in a browser tab without installing a separate desktop client. Check what clipboard and file transfer features are available in your session.
- Self-hosted runner
- A CI agent that you register and run on your rented machine to receive build jobs. Configure its permissions, dependencies, and caches yourself, then remove its registration and tokens before your rental ends.
- IL2CPP
- A Unity technology that converts script intermediate code to C++ for compilation with the native toolchain. Large projects may need more memory, temporary disk space, and build time.
- Thunderbolt 5 multi-machine connection
- An optional configuration for connecting multiple machines, billed per machine. Your apps and tasks still need to support multi-machine workflows; the machines don’t become a single Mac with more memory.
Let support help you work through the step that’s stuck.
Start with the connection and first-build guides. For an existing order, submit a support ticket through the console with your order number, node, error text, and redacted screenshots. For pre-sales questions, email support@testmini.com.