Reiterations
← Back to all apps
Sleep Train

Sleep Train

Write your own audio scripts and play them while you sleep — private, customizable, no subscriptions.


Sleep Train lets you write scripts that will be played back to you while you sleep. You can customize your scripts exactly how you want, saying whatever you want. There are no audio packs to buy, no pre-scripted content—everything is customizable.

Sleep Train uses an advanced, on-device language model, Kokoro, that provides better text-to-speech than Apple's built-in speech. The Kokoro model requires a recent iPhone running iOS 26+.

The Sleep Train app has four main pages: Scripts, Sessions, Timer, and Settings.

Scripts

Each Script is a collection of lines. Each line is one spoken utterance. Tapping the name of a script navigates to the Script Editor, where you can edit, add, and delete lines.

Sleep Train main screen

Editing Lines

Sleep Train script editor

Script Options

Sessions

Each session is a collection of scripts.

Creating a Session

  1. In the Sessions tab, tap the + button in the upper right
  2. Give your new session a name
  3. Add scripts to your session
  4. Drag and drop scripts to set their order in the session.
Sleep Train session

How Sessions Work

When you add a script to a session, you can set a duration for that script. The session plays lines from the script at random for the duration you set, then moves on to the next script.

If a script has only a few lines but a long duration, the app repeats lines as needed to fill the time. It tries to play every line before repeating any, and will not play the same line twice in a row.

Playing and Managing Sessions

Timer

The Timer tab schedules a nightly session or script to start automatically, right from the app — the recommended way to play Sleep Train while you sleep on iOS 27 and later.

Sleep Train Timer tab

Setting a Nightly Timer

  1. Open the Timer tab.
  2. Pick a start time.
  3. Choose what plays: a Script (with a duration stepper from 1–30 minutes) or a Session (which uses its own configured durations).
  4. Turn on the Nightly Timer toggle.

Once the toggle is on, Sleep Train schedules a silent, repeating daily notification at the time you chose, and the timer keeps firing every night until you turn the toggle off. The first time you turn it on, the app asks for notification permission.

Notifications must stay allowed. The notification itself is silent — no sound, no badge — since you're asleep when it fires. You can turn off banners and sounds for Sleep Train in iOS Settings and the timer will still work, but you must leave notifications allowed, or the timer can't fire at all.

One-Time Shortcuts Setup

The Timer tab schedules when playback happens, but on iOS 27 you still set up a one-time automation in Shortcuts so the phone knows to run Sleep Train at that moment. Unlike the older approach below, you only have to do this once — you never need to come back and edit it, even when you change which script or session is playing.

  1. Open the Shortcuts app.
  2. Tap + to create a new shortcut, then choose Automation > Notification.
  3. Choose Sleep Train as the app.
  4. Set Notify off.
  5. Search for Play Timed Audio and add it. Disable Show When Run.
  6. Rename your shortcut by tapping the down-arrow next to the name at the top.
Setting up the App Notification automation trigger for Sleep Train Finished automation with the Play Timed Audio action

There's no separate save step — Shortcuts saves the automation automatically as you go.

That's it — from now on, everything is controlled from the Timer tab. Change the time, switch scripts, or turn the schedule off entirely, all without opening Shortcuts again. Play Timed Audio takes no parameters; it simply plays whatever the Timer tab currently has selected, which is what makes the one-time setup possible.

The App Notification automation trigger requires iOS 27. Sleep Train itself runs on iOS 26.2 and later, so if you're not yet on iOS 27, use the manual Shortcuts scheduling described below instead — it still works, and any automation you've already built with Play Sleep Script or Play Sleep Session continues to work unchanged.

Timer scheduling currently supports a fixed clock time only; starting a set number of hours after you go to bed isn't yet supported from the Timer tab. For that, see Delayed Start with a Hold Focus below.

Settings

Sleep Train has a wide variety of audio settings to tune the voice exactly how you want it.

Sleep Train playback settings

Playback Settings

Time Between Clips sets the pause between each line when played back. A short duration reads lines quickly one after the other.

Fade In/Out provides a smooth fade at the start and end of a session—both for the background audio and for your first and last spoken clip.

Background Audio is a Pro Audio feature and requires purchase of the Pro Audio item. Choose from several audio effects that play in the background while your session runs. A separate Background Volume control lets you balance the background audio against the spoken script.

Sleep Train voice settings

Voice Settings

TTS Engine — By default, standard Apple Speech is used, and you can select any Apple voice. If you have iOS 26+, you can also select the Kokoro Engine, a separate on-device language model that provides higher-quality speech. The first time you use Kokoro it downloads the model to your phone, which may take a minute. All speech processing happens locally on your device—no part of your scripts is ever sent anywhere.

Voice — Select either an Apple or Kokoro voice for playback. Changing the voice or any voice-related parameter plays a short demo so you can hear what it sounds like.

Speech Rate — Adjusts the speaking tempo, faster or slower.

Voice Pitch — Raises or lowers the pitch of the voice.

Voice Volume — Usually set at 100%, but you can lower this to balance the voice against background audio.

Sleep Train timbre settings

Timbre Settings is another Pro Audio feature unlocked with the Pro Audio purchase. Background Audio and Timbre are bundled together—purchasing Pro Audio unlocks both.

Sleep Train audio cache

The Audio Cache

Sleep Train renders the text of your scripts into audio as a background process, enabling instant playback without delay. The cache rebuilds automatically whenever you change a script or audio settings. If you notice any issues, you can manually rebuild the audio cache from the Settings page.

Shortcuts and Automations: Playing at Night

For the simplest operation, tap the Play Session button when you go to sleep. If you're on iOS 27 or later, the Timer tab above is the easiest way to schedule playback automatically. The instructions below cover manual scheduling with iOS Shortcuts — still the right approach if you're on an earlier iOS version, or if you already have an automation set up this way and don't need to change it.

Using Shortcuts

  1. Make sure you have Apple's Shortcuts app on your device. It should be pre-installed, but if you've removed it you can re-download it from the App Store.
  2. Open the Library and search for Sleep Train. You'll see two actions:
Sleep Train in Shortcuts
  1. To create a shortcut: tap the + button, search for Sleep Train, and add a Play Sleep Session action. Tap Session Name to choose which session will run, then tap the shortcut title to rename it.
  2. Disable Show When Run to prevent your phone from waking up to display a popup when the shortcut runs.

Scheduling with Automations

  1. Switch to the Automation tab in Shortcuts and create a new automation.
Sleep Train automation
  1. Make it a Time of Day automation and set the desired time (for example, 2:00 AM).
  2. Select Run immediately to skip the confirmation prompt.
  3. In the next screen, select the shortcut you just created.

Your phone will now play your sleep session at the scheduled time every night.

Delayed Start with a Hold Focus

For more control, you can trigger the session after a delay from bedtime rather than at a fixed clock time. This uses a Hold focus.

  1. Create a Hold focus in your iOS Focus settings.
  2. Download this shortcut: Hold Timer. When run, the Hold Timer shortcut prompts you for a duration, turns on your Hold focus, then turns it off after that time. For example, if you set a 2-hour hold when you go to bed, the focus turns off 2 hours later.
  3. Create a new automation triggered When Hold is turned off. Set that automation to play your sleep session.

This way, your session starts automatically after your chosen delay—no matter what time you go to bed.


For information about how Sleep Train handles your data, see the Privacy Policy.