Adults Only - 18+
This app is intended strictly for adults only. By continuing, you confirm that you are 18 years of age or older, or the legal adult age in your location.

This app contains explicit adult sexual content, adult training themes, and mature language. It is not made for minors, and minors must not access or use it under any circumstances.

This app is intended only for consenting adults who choose to use adult-oriented training content voluntarily. If you are under 18, if adult sexual content is illegal where you live, or if you do not agree with these terms, leave now.
🎧
Small Tip
This tool is best experienced with earphone.
Safety First
This adults-only training app is fully customizable. Use it with reason, control, and within your personal limits at all times.

Listen to your body. Stop or take a break immediately if you feel pain, panic, dizziness, breathing trouble, nausea, discomfort, injury, or anything unsafe.

Never force yourself past your limits. If the settings feel unsafe, pause, lower the intensity, customize them, or stop completely.

Deepthroat training can be risky if pushed too far or done incorrectly. Do not use this tool in any way that restricts breathing, removes your control, or causes harm.

Any harm, injury, or negative outcome from incorrect use, ignoring warning signs, or pushing too far is your responsibility. Use responsibly and at your own risk.
End session?
Are you sure you want to exit? This will end the current session and return to the title screen.
Title corner pictureDiscord picture

Throat Goat Trainer

Life is short, so keep it messy
By Maddie
Version
18+
Need help? Open guides

Statistics

Guides

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

  1. Open Windows Settings.
  2. Go to Time & language.
  3. Open Speech.
  4. Under Voices, add or choose a voice you like.
  5. Restart your browser, then open the tool again.

Android

  1. Open Android Settings.
  2. Search for Text-to-speech or Text-to-speech output.
  3. Choose your preferred speech engine and voice.
  4. 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

  1. Go to Customization from the title screen.
  2. Choose the segment tab you want to share, or choose General.
  3. Add, remove, or toggle phrases until the list is how you want it.
  4. Use Export in that tab.
  5. Copy the exported text from the box and send it to someone else.

Import a pack

  1. Go to Customization.
  2. Open the matching segment tab, or General if the pack is for general dirty talk.
  3. Paste the shared pack text into the import/export box.
  4. Use Import.
  5. 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

  1. From the title screen, choose Load Preset.
  2. Find the preset you want to share.
  3. Press Export on that preset card.
  4. Copy the exported text from the box below the preset list.
  5. Send that text to another user through any app that supports text.

Import one preset

  1. Copy one shared preset text.
  2. From the title screen, choose Load Preset.
  3. Paste the shared text into the Import / Export Presets box.
  4. Press Import.
  5. 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

  1. From the title screen, open Customization.
  2. Choose an existing custom segment, or press + Add Custom Segment to create a new one.
  3. Turn on Enable Custom Segment.
  4. Write the segment name and instruction text.
  5. Leave Rest segment unchecked if it should behave like an active segment, or check Rest segment if it should behave like a rest segment.
  6. Check Follow BPM rhythm if the segment should use the beeping rhythm.
  7. 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

  1. Open the custom segment tab you want to share.
  2. Use Export in that tab.
  3. Copy the text from the import/export box.
  4. Send it through Discord, messages, email, notes, forums, or any text app.

Import a custom segment

  1. Copy a shared custom segment text.
  2. Open Custom Segment 1 or Custom Segment 2.
  3. Paste the text into the import/export box.
  4. Use Import.
  5. 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

  1. Set up your session normally.
  2. On the final Start Session screen, press Pick Background Videos.
  3. Select one or more video files from your device.
  4. 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.

Achievements

Customization

Customization

These are the editable preset lines plus anything you add. Turn lines off without deleting them, or remove lines completely.
Use this to share only the currently selected phrase list. Copy and paste works on Windows and Android. No downloads are used.

Load Preset

Use Export on a preset card to share one preset at a time. To import, paste one shared preset text below first.

Session Setup (1/5)

Duration Settings (2/5)

Active Segments (3/5)

Deepthroat35
Continuous Deepthroat30
Blowjob20
Deep Hold15
Total: 100%

Rest Segments (4/5)

Worship25
Rest30
Slaps20
Handjob25
Total: 100%

Start Session (5/5)

Ready to Begin
Your setup is complete. Press the button below to start the countdown and begin the session.
Calculated Tier
No background videos selected.
Optional. Pick one or more local videos before starting. They are not saved in the app. If videos are selected, the session plays them randomly behind the transparent timer, progress bar, and instructions. On Android, the app will try to switch the session into landscape/fullscreen.

Deepthroat Training

20:00
BPM: —
Ready to begin
Training Complete
Excellent work. You\'ve completed your session.
5