How to change the voice
The voice comes from your browser and device. The app can use whatever voices your browser exposes through speech synthesis.
Windows
- Open Windows Settings.
- Go to Time & language.
- Open Speech.
- Under Voices, add or choose a voice you like.
- Restart your browser, then open the tool again.
Android
- Open Android Settings.
- Search for Text-to-speech or Text-to-speech output.
- Choose your preferred speech engine and voice.
- Open the tool again in Chrome.
Best reliability: use Chrome or Edge on Windows, and Chrome on Android. Different browsers may expose different voices.
What BPM means
BPM means beats per minute. In this app, it controls how fast the beeping rhythm plays during rhythmic segments.
- Lower BPM = slower pace.
- Higher BPM = faster pace.
- The app randomly picks a BPM inside the range you set before the session.
- Target BPM only shows during segments where the rhythm matters.
Example: 60 BPM means one beat every second. 120 BPM means two beats every second.
What segments mean
Segments are the separate parts that make up a full session. The app builds a plan by picking one segment at a time, using your duration ranges and probability settings.
Active segments
Active segments are the main training parts of the session. They usually use the active duration range, and some of them use the BPM rhythm when timing matters.
- Deepthroat, Continuous Deepthroat, Blowjob, and Deep Hold are active segments.
- The Active Segment Probabilities screen controls how often each active segment can appear.
- Active Segments Before Rest controls how many active parts can happen before a rest segment is added.
Rest segments
Rest segments are the recovery or lower-intensity parts between active training parts. They use the rest duration range, except Slaps also uses the slaps count range.
- Worship, Rest, Slaps, and Handjob are rest segments.
- The Rest Segment Probabilities screen controls how often each rest segment can appear.
- Rest segments give the session variety and help break up the active parts.
In short: active segments are the main work parts, and rest segments are the break or lighter parts between them.
Ending tiers and points
Every successful session gets a difficulty score. Presets use the same score, so the tier label is based on the saved settings.
Average-based scoring
All range settings are scored from the average of the minimum and maximum value. The minimum alone never decides the score, and the maximum alone never decides the score.
Tier requirements
- Beginner (Tier 1): 18 points or less.
- Good Girl (Tier 2): 19 to 27 points.
- Throat Goat (Tier 3): 28 points or more.
Total session length
- 30 minutes or more: 5 points.
- 22 to 29 minutes: 4 points.
- 16 to 21 minutes: 3 points.
- 10 to 15 minutes: 2 points.
- Under 10 minutes: 1 point.
Hold duration
- 36 seconds or higher: 5 points.
- 26 to 35 seconds: 4 points.
- 16 to 25 seconds: 3 points.
- 10 to 15 seconds: 2 points.
- Under 10 seconds: 1 point.
Active segment duration
- 51 seconds or higher: 5 points.
- 36 to 50 seconds: 4 points.
- 26 to 35 seconds: 3 points.
- 16 to 25 seconds: 2 points.
- Under 16 seconds: 1 point.
Rest duration
- 61 seconds or higher: 1 point.
- 46 to 60 seconds: 2 points.
- 31 to 45 seconds: 3 points.
- 16 to 30 seconds: 4 points.
- 15 seconds or lower: 5 points.
Active segments before rest
- The average number becomes the points: 1 segment = 1 point, 2 segments = 2 points, 3 segments = 3 points, and so on.
BPM
- 81 BPM or higher: 5 points.
- 66 to 80 BPM: 4 points.
- 51 to 65 BPM: 3 points.
- 41 to 50 BPM: 2 points.
- 30 to 40 BPM: 1 point.
Slaps
- If Slaps probability is 0%, Slaps adds 0 points.
- 1 to 3 slaps: 1 point.
- 4 to 6 slaps: 2 points.
- 7 to 10 slaps: 3 points.
- 11 to 15 slaps: 4 points.
- 16 or more slaps: 5 points.
Bonus rules
- Warmup Start on: 0 points.
- Warmup Start off: +1 point.
- Hidden Session Timer on: +1 point.
- Dynamic Difficulty on: +1 point.
Example: if a range is 20 to 40 seconds, the app scores it as 30 seconds. Balanced presets can score higher by combining several moderate settings instead of relying on one extreme setting.
Import and Export Dirty Talk Packs
Import and export lets users share dirty talk packs by copy and paste. Each pack is for the currently selected customization tab only, so you can share one segment at a time.
Export a pack
- Go to Customization from the title screen.
- Choose the segment tab you want to share, or choose General.
- Add, remove, or toggle phrases until the list is how you want it.
- Use Export in that tab.
- Copy the exported text from the box and send it to someone else.
Import a pack
- Go to Customization.
- Open the matching segment tab, or General if the pack is for general dirty talk.
- Paste the shared pack text into the import/export box.
- Use Import.
- Save customization, then start a session with Dirty Talk enabled.
Because the pack is plain text, it works on Windows and Android. You can share it through messages, Discord, notes, email, or any app that can send text. No file download is needed.
Import and Export Custom Presets
Custom presets store one complete session setup, including session length, BPM range, duration ranges, probability sliders, dirty talk setting, hidden timer setting, and random starting segment setting.
Export one preset
- From the title screen, choose Load Preset.
- Find the preset you want to share.
- Press Export on that preset card.
- Copy the exported text from the box below the preset list.
- Send that text to another user through any app that supports text.
Import one preset
- Copy one shared preset text.
- From the title screen, choose Load Preset.
- Paste the shared text into the Import / Export Presets box.
- Press Import.
- The imported preset will appear in your saved preset list.
Preset sharing uses plain text copy and paste. No file download is needed, so presets can be shared through Discord, messages, email, notes, forums, or any community space that supports text. This makes it easy for users to create their own setups and share one custom preset at a time.
Custom Segments
Custom segments let you add your own activities to the session generator. You can use them for riding on your dildo, toy practice, position changes, teasing, breathing breaks, worship tasks, or any other activity you can imagine.
Create a custom segment
- From the title screen, open Customization.
- Choose an existing custom segment, or press + Add Custom Segment to create a new one.
- Turn on Enable Custom Segment.
- Write the segment name and instruction text.
- Leave Rest segment unchecked if it should behave like an active segment, or check Rest segment if it should behave like a rest segment.
- Check Follow BPM rhythm if the segment should use the beeping rhythm.
- Use the dirty talk list to add, remove, enable, or disable lines for that custom segment.
Durations and probability sliders
- If custom duration is off, the segment follows the normal Active Segment Duration or Rest Duration range.
- If custom duration is on, its own duration range appears on setup Screen 2.
- If the segment is enabled, its probability slider appears on the matching setup screen: Active Segments when Rest segment is unchecked, or Rest Segments when Rest segment is checked.
- The probability total on that screen still needs to equal exactly 100% before starting.
Export a custom segment
- Open the custom segment tab you want to share.
- Use Export in that tab.
- Copy the text from the import/export box.
- Send it through Discord, messages, email, notes, forums, or any text app.
Import a custom segment
- Copy a shared custom segment text.
- Open Custom Segment 1 or Custom Segment 2.
- Paste the text into the import/export box.
- Use Import.
- The full custom segment is imported, including name, instructions, enabled setting, rest/active rule, BPM rule, custom duration rule, and dirty talk.
Custom segments are shared as plain text, so communities can trade complete activities without downloads. This makes the tool more flexible while still letting each user adjust limits, timing, and probability before starting.
Background Videos
Background videos let you play your own local video files behind the session screen.
How to use background videos
- Set up your session normally.
- On the final Start Session screen, press Pick Background Videos.
- Select one or more video files from your device.
- Start the session.
What happens during the session
- If no videos are selected, the session works normally.
- If videos are selected, the app randomly plays them in the background.
- The timer, BPM, progress bar, and current instruction stay visible over the video.
- On Android, the app will try to switch the session into fullscreen landscape mode.
For best results, use landscape videos on PC or when rotating your phone sideways. If a video looks cropped, choose a video with a shape closer to your screen.
Dynamic Difficulty
Dynamic Difficulty makes the session gradually harder over time while always staying inside the limits you selected.
How it works
- Every completed minute adds 1 difficulty point.
- Each point adds about 3% extra weighting toward harder rolls.
- The weighting is capped so the session stays random instead of becoming fixed.
- Difficulty resets every new session.
What it affects
- BPM becomes more likely to roll higher within your BPM range.
- Slaps become more likely to roll higher within your slap range.
- Hold duration becomes more likely to roll longer within your hold range.
- Active segments become more likely to roll longer within your active duration range.
- Active segments before rest become more likely to roll higher within your selected range.
- Rest duration becomes more likely to roll shorter within your rest range.
Dynamic Difficulty never goes below your minimums or above your maximums. It only changes the chance of where inside those ranges the roll lands.