How to set up an iPhone farm on a Mac

Updated · iFarm 1.0

To set up an iPhone farm on a Mac, install Xcode, add your Apple ID as a developer team, install iFarm, then plug in each iPhone by USB, trust the Mac and turn on Developer Mode. iFarm's setup guide checks every step and installs its helper on each phone. It takes about 20 minutes, mostly waiting for Xcode to download.

What you need before you start

An iPhone farm on a Mac is a set of stock iPhones, plugged into one Mac, that you watch and control from a single window. With iFarm there is no jailbreak and no server: everything runs on your Mac.

You needDetails
A MacmacOS 14 (Sonoma) or later, Apple silicon or Intel. A Mac mini works well as an always-on host.
XcodeFree from the Mac App Store. iFarm uses it to build the phone helper.
An Apple ID in XcodeA free Personal Team works; the Apple Developer Program ($99/year) is recommended for a farm.
iPhonesiOS 16 or later, stock (no jailbreak).
CablesOne data cable per phone (not charge-only).
A powered USB hubFor 3 or more phones. See phone farm hardware.
TimeAbout 20 minutes, mostly waiting for Xcode to download.

Note: Only automate phones dedicated to the farm, and follow each app's rules. A replay taps whatever is on screen, so don't run one on a phone someone is using.

Step 1: Install Xcode

  1. Open the Mac App Store, search for Xcode and install it. It's a large download; this is most of the 20 minutes.
  2. Open Xcode once. Agree to the license and let it install its components.
  3. Recent Xcode versions download iPhone support separately. If it's missing, iFarm's setup guide shows a Download iOS support button, or use Xcode → Settings → Components → iOS → Get.

If your Mac's developer tools point at the Command Line Tools instead of Xcode, leave it: iFarm uses Xcode directly.

Step 2: Add your Apple ID as a developer team

iFarm installs a small helper app (WebDriverAgent, open source) on each iPhone. iOS only runs it if it's signed by an Apple developer team you belong to.

  1. In Xcode, open Settings → Accounts.
  2. Press +, choose Apple ID and sign in.
  3. Your team appears in the list. A free account shows as a Personal Team.

Which account to use:

AccountCostHelper app lastsBest for
Free (Personal Team)$07 days, then re-signed (iFarm renews it automatically)Trying iFarm with a few phones
Apple Developer Program$99/year1 year; registers up to 100 iPhones a yearA farm

A free team also has a limited number of app IDs per week. If you plan to run more than a handful of phones, the paid program saves you trouble.

Step 3: Install iFarm and open it the first time

  1. Download the iFarm DMG from the iFarm website, and only from there: a copy from anywhere else could have been changed.
  2. Open the DMG and drag iFarm onto Applications.
  3. Open iFarm from Applications. Keep it there: start-at-login only works from Applications.

The first time, macOS says it could not verify iFarm is free of malware. iFarm isn't notarized by Apple yet; the warning means Apple hasn't checked the app, not that anything was found. To open it:

  1. Click Done on the warning (not Move to Trash).
  2. Open System Settings → Privacy & Security and scroll to "iFarm was blocked to protect your Mac".
  3. Click Open Anyway and confirm with your Mac's password or Touch ID. That's macOS asking, not iFarm.

You do this once. After an update replaces the app, macOS may ask again.

Step 4: Prepare each iPhone

Do this for every phone in the farm. It takes a couple of minutes per phone.

  1. Plug it in by USB with a data cable. The first connection must be by cable; Wi-Fi works after that. If the Mac asks "Allow accessory to connect?", click Allow.
  2. Trust this Mac. Unlock the phone, tap Trust and enter the passcode.
  3. Turn on Developer Mode. Settings → Privacy & Security → Developer Mode → On. The phone restarts; unlock it and confirm Turn On. The switch only appears after the phone has been plugged into a Mac with Xcode, so do step 1 first.
  4. Keep it awake. Settings → Display & Brightness → Auto-Lock → Never. For dedicated farm phones, also consider no passcode. Otherwise save the passcode in iFarm so it can unlock the phone by itself (it's stored only in the Mac's Keychain).
  5. Turn off Low Power Mode and keep the phone charging.

Step 5: Run the first-run checklist

iFarm opens a setup guide that checks each step and tells you what to do. You can reopen it any time with the gear button.

  1. Xcode: a green check, or a button to install or open it.
  2. Signing team: pick your team (paid teams are listed first) and a bundle ID prefix you own, such as com.yourname. iFarm suggests one. The helper is installed as com.yourname.WebDriverAgentRunner.
  3. Phones: a checklist per phone: connected, trusts this Mac, Developer Mode on, helper running. Anything not ready says how to fix it, with a button where possible.
  4. Preferences: start phones automatically, and whether to allow control over Wi-Fi.

The first start of each phone takes a few minutes. iFarm:

Keep the phone unlocked for about a minute while it's being prepared. After that, an app called iFarm (black phones icon) appears on the phone. iFarm starts it from the Mac; you never need to open it. If you tap it by hand it shows a blank screen and closes. That's normal.

Step 6: Fix "Untrusted Developer" if it appears

On a phone that hasn't run an app from your team before, iOS may show Untrusted Developer instead of starting the helper.

  1. On the phone, open Settings → General → VPN & Device Management.
  2. Tap your developer entry (your Apple ID or team name).
  3. Tap Trust and confirm.
  4. In iFarm, press Try again.

You do this once per phone per team.

Step 7: Check the live view and control

Open All phones. Every phone appears as a live tile, and each tile can be controlled:

Each phone shows a green USB or orange Wi-Fi tag. iFarm uses the cable whenever one is plugged in. Measured on an iPhone 13 Pro Max, USB answers commands in about 6 ms and Wi-Fi in about 18 ms.

To repeat the same tap on several phones, check them and turn on Mirror: taps and swipes are scaled to each phone's screen size.

Step 8: Record your first automation

Start with something harmless, such as opening Settings and going to General → About.

  1. Open one phone large.
  2. Press Record in the Automations box.
  3. Use the phone through iFarm's live screen: press Home, open Settings, tap General, tap About.
  4. Press Stop and save. The automation appears under Automations in the sidebar.
  5. Check a few phones in the grid, select the automation and press Run.

For each tap, iFarm remembers the text on screen under your finger, so the replay finds the same button on other iPhone sizes. Recording only covers what you do in iFarm's live view, not touches made directly on the phone.

To stop anything at once: press Stop, Stop all or ⌘. on the Mac, or hold volume up + volume down together on the phone itself.

Next, look at scheduling to run it at random times inside a window, or the full guide on automations.

Step 9: Go 24/7

A farm that runs around the clock needs the Mac and phones to stay awake and recover by themselves.

  1. Open Health in the sidebar. It shows "Room for about N more phones", memory, CPU, bandwidth and each phone's battery.
  2. Sleep: while a phone is running or a schedule is on, iFarm keeps the Mac from sleeping on its own. This is an app-held request that ends when iFarm quits, not a system setting. A laptop still sleeps when you close the lid.
  3. Start at login, reopen after a crash: click Enable on the Health page. Move iFarm to Applications first. macOS may ask you to approve it in System Settings → General → Login Items.
  4. Idle stop: Setup → Preferences → "Disconnect a phone after no use for…" defaults to 30 minutes. For a 24/7 farm, set it to Never and keep phones charging.
  5. Signing: iFarm renews the helper's signing by itself in its last 3 days (7 days on a free team, a year on a paid one).
  6. After a phone restarts, unlock it by hand once: iOS won't start the helper on a locked phone. The tile says Unlock the phone by hand to continue when this is needed.

If a phone's helper crashes or stops answering, iFarm restarts it by itself, waiting longer after each failure. Unplugging and plugging back in reconnects automatically.

Troubleshooting

What you seeWhat to do
macOS says it can't verify iFarm is free of malwareExpected the first time. System Settings → Privacy & Security → Open Anyway.
No Developer Mode switch on the phonePlug the phone into the Mac with Xcode first, then look again.
Turn on Developer ModeSettings → Privacy & Security → Developer Mode → On, then confirm after the restart.
Untrusted Developer / Trust the developerSettings → General → VPN & Device Management → your entry → Trust.
Sign in to the team in XcodeXcode → Settings → Accounts → add the Apple ID.
Accept Apple's latest agreementThe Account Holder accepts it at developer.apple.com/account.
Free team app limit reachedUse a paid team or wait a week.
Phone is being preparedFirst connection only; keep the phone unlocked for about a minute.
Unlock the phoneUnlock it; iFarm retries on its own.
Phone not reachableUse a USB cable, unlock the phone, try again.
Phone keeps falling back to Wi-FiQuit Google Chrome (or close chrome://inspect); it can grab the phone over USB.
Connection drops when the helper startsPlug into the Mac or a powered hub, not a monitor's USB hub.
Phone charges but isn't seenIt's probably a charge-only cable. Use a data cable.

Logs are in ~/Library/Application Support/iFarm/Logs (the Show logs button opens the folder).

Frequently asked questions

How long does it take to set up an iPhone farm with iFarm?

About 20 minutes for the first phone, most of it waiting for Xcode to download. Each extra phone takes a couple of minutes: plug in, Trust, Developer Mode, and a short first start.

Do I need a paid Apple developer account?

No. A free Personal Team works, and iFarm re-signs the helper every 7 days automatically. For a farm, the Apple Developer Program ($99/year) is recommended: the helper lasts a year and you can register up to 100 iPhones a year.

Do I need to jailbreak the iPhones?

No. iFarm works with stock iPhones on iOS 16 or later. It installs a helper app signed with your own developer team, the same way developers test their own apps.

Can phones connect over Wi-Fi?

Yes, after the first USB connection. Wi-Fi control is protected by a per-phone secret kept in the Mac's Keychain, and you can turn it off for USB only. Past about 10 phones on Wi-Fi, use cables.