🎙️ Role-Play Trainer

Welcome

Sunbull Role-Play Trainer · Train smarter. Close more.

Tap to start practicing.
loading...
0 / 4 tie-downs
0 "if you qualify"
🟡 Neutral
Press the mic and start the conversation as the sales rep would.
Click ▶ Start to begin.
Type instead of speak

Full role-plays

Full-length transcripts. Walk the entire flow from opener to close. The AI follows the script word-for-word when you stay close, and reasons from the framework when you go off-script.

🔥 Rapid-fire objection drills reflex training

Pocket-sized scenarios. Customer hits you with an objection in the first line — you have 3 seconds to respond. Repeat each one 5 times in a row to turn reactions into reflexes.

📊 Stats & Leaderboard

Per-device session history. Score, tie-downs, deal strength — all tracked automatically when you click End & Score.

No sessions yet. Run a practice and click End & Score to record your first one.

AI backend

☁️ Cloud API — Recommended (fast + smart)

Uses Groq, Cerebras, OpenAI, or any compatible endpoint. Sub-1-second responses, top-tier model quality. Requires a free API key (Groq's free tier = thousands of requests/day).

🧠 Browser AI (offline, slower)

Runs 100% in your browser. Zero setup after download, fully private. Speed depends on your hardware — can be 5-60s per response on older laptops. Requires Chrome/Edge 113+ and 8GB+ RAM.

🔒 Lock Admin Areas (Scripts + Settings)

Set a password to prevent reps from editing scripts or seeing settings. The lock applies to Scripts and Settings tabs only — Practice, Techniques, and Help stay open.

Important: after setting the password here, click Generate deployable below and redeploy. The password gets baked into the file so reps on the hosted URL face the lock too.

📦 Deploy with your keys baked in (for sharing with your team)

Paste your fresh API keys above, click Save settings, then click the button below. It generates a copy of this file with your keys embedded — drag the downloaded file onto app.netlify.com/drop (or your existing Netlify site) to update the URL your team uses. No file editing required.

Default framework

Paste your general sales framework or methodology here. It will auto-fill into new scripts you create, and you can still customize per-script if needed. (Existing scripts are not overwritten.)

Voice (Text-to-speech)

🎙️ Browser voice (free, robotic)

Uses your OS's built-in voice. Sounds like text-to-speech — varies by device. Good enough to practice; not realistic.

🗣️ ElevenLabs — Realistic human voices (Recommended)

AI voices that sound indistinguishable from real people. Each homeowner personality gets a different voice, so each session feels like talking to a different person. Free tier: 10K chars/month (~100 practice turns).

Browser voice settings (used when not using ElevenLabs)

Quick-reference — techniques to use in every presentation

Open any section before (or during) a practice run. These aren't steps — they're moves you weave through the whole conversation.

The Four Core Techniques

Use these continuously. Not once — throughout. The AI customer in Practice is trained to respond realistically when you hit these.

1. Test Close — the temperature gauge

What it is: A question that reads the homeowner's mindset WITHOUT asking them to commit to anything. Like a thermometer — you're just measuring where they stand.

Examples:

  • "What's your expectation of what's going to happen today?"
  • "How are you feeling so far about what we've gone over?"
  • "Before we go any further, is this making sense?"
  • "If you found a nickel on the ground, would you pick it up?" (used to frame smaller asks as no-brainers)

Why it works: You find out if they're warm, cold, or lukewarm before you invest more effort. Adjust your pitch based on what they say.

2. Tie Down — small yeses stack into a big yes

What it is: A leading question designed to get a specific YES on a small hypothetical. Small commitments make the big commitment easier.

Examples:

  • "If I could show you a program that saves you 20-30% on your bill, is that something you'd want to move forward with?"
  • "Are you free at 7:30 tomorrow?" → then → "Great, mind if I stop by then?"
  • "If everything checks out and you qualify, is this something you'd want to lock in?"
  • "Makes sense?" / "Sound fair?" after every key point

Why it works: Every yes is a micro-commitment. By the time you ask for the big yes, they've already said yes 10 times.

3. Planting Seeds — set expectations before they become objections

What it is: Drop an idea early so it feels natural later. Two big uses: the referral setup and the "only if you qualify" frame.

Examples:

  • Referral seed: Early on, ask "How did you hear about us?" — plants the idea that this is something people refer to.
  • Qualification seed: Say "only if you qualify" throughout the presentation. "If you qualify, you'd be locked in at $188." "Only qualified homeowners get this." By the end, they WANT to qualify.
  • Pizza example: Tell someone "everyone can have pizza except you" and suddenly they want pizza. That's the seed you're planting with "only if you qualify."

Why it works: Objections raised preemptively don't feel like objections. They feel like expectations.

4. Takeaway — exclusivity creates urgency

What it is: The opposite of pushing. You pull back. "This might not be for you. Only if you qualify." People want what they might not get.

Examples:

  • "I'm not even sure the house qualifies yet — there's still an inspection."
  • "Even if you qualify today, the house itself has to pass a separate step."
  • "This program is really for homeowners who've never been late on mortgage — is that you?"
  • "Honestly, not every homeowner we talk to ends up qualifying."

Why it works: Psychological reactance. When something feels scarce or gated, it becomes more desirable. Combined with planting seeds ("only if you qualify"), it turns disqualification fear into buying motivation.

Door-Knocking — physical & tactical

Body language at the door
  • Stand at an angle, not square to the door. Less confrontational.
  • Safe distance — step back so the homeowner doesn't feel crowded. Makes them comfortable opening the door.
  • Wear a vest or ID so you don't get mistaken for a burglar. Respectability is 90% of the battle.
  • Relax the face. Smile. Don't lead with the pitch — lead with warmth.
Legal posture
  • Door-knocking is legal until the homeowner asks you to leave. If they ask, you leave.
  • You're following up on a legal notice (SB 350). That framing isn't marketing — it's accurate and it de-escalates.
  • If someone is aggressive or threatening, walk away. Don't engage.
Ring camera / not home

Do NOT try to run the full pitch through a Ring camera. You can't see their face, they can't see you, and you can't verify the bill. Leave a professional note or come back. Pitching requires eyes on the bill and eyes on the homeowner.

Two-homeowner rule

Both decision-makers need to be at the appointment. Confirm this when you book:

  • "Who else lives in the house? Will they be around at 10?"
  • "It's important that whoever shares the bill is there — they'll have questions too."

If you show up and only one is there, you're pitching to a decision-blocker, not a decision-maker. Reschedule if you can.

Handling rejection
  • Rejection isn't personal. 90%+ of doors say no.
  • Focus on the solution, not the problem. "I get it — that's exactly why we're here."
  • Positive affirmations between doors. A 10-second reset before the next knock.
  • Every no is closer to the next yes.

In-House Presentation — advanced moves

Discovery phase handles objections early

Ask questions FIRST. Before you explain anything, you should know: how many people live there, AC type/age, pool, work-from-home, prior upgrades (LEDs, insulation, windows). This serves two purposes:

  • It gives you ammunition for the "why your bill is high" moment.
  • It pre-handles objections — if they've already told you they don't have a pool and run a lot of AC, they can't later say "I don't really use much electricity."
The "Wizard" — the invisible deal-killer

What it is: The third party the homeowner talks to after you leave — spouse not in the room, their dad, a contractor friend, a neighbor — who "knows better" and kills the deal. They're the wizard behind the curtain.

How to prevent it:

  • Have both homeowners present (back to the two-homeowner rule).
  • Make the customer the expert. At the end, have THEM recap the program back to you: "Tell me what you just learned. How would you explain this to your wife/brother/whoever?"
  • If they can't explain it, you haven't closed — you've just sold to someone who'll lose the sale for you.
  • Plant a seed: "A lot of people get excited and then their brother-in-law who's a plumber talks them out of it — make sure you're the one driving this decision."
The final recap (commitment confirmation)

Before you leave, flip the sheet and walk through it again:

  • "You're currently spending $300 a month. New payment is $188."
  • "Your $300 keeps going up. Your $188 is fixed at a 2.99 escalator."
  • "We're submitting with LightReach. They check property tax, mortgage history, credit, and title."
  • "Once LightReach approves, Pacific Sky Solar comes out to inspect the roof, beams, rafters, shading, and panel box."
  • "Even if you qualify with LightReach today, the house still has to qualify."

Then: "Grab your email, we should have something from LightReach any minute."

"Only if you qualify" — say it constantly

This is the most important phrase in the in-house presentation. Use it every 2-3 minutes:

  • "If you qualify, they'll lock you in at $188."
  • "Only if you qualify does the utility company accept the application."
  • "Let's see first if you qualify."

By the end of the hour, they want to qualify more than you want to sell.

Environment
  • Dinner table is ideal. Formal-enough that it feels serious, comfortable-enough that they relax.
  • Avoid couches (hard to write, hard to show the bill).
  • Avoid kitchen counters if kids are running around — ask to sit somewhere quieter.
  • Laptop, bill, pen ready before you sit down.

📱 Share with your team + install on phones

Two paths to roll this out — pick what fits your team:

Option A — Easy: host the file online (recommended)

  1. Go to app.netlify.com/drop (no signup needed for first deploy).
  2. Drag roleplay-trainer.html onto the page.
  3. You get a URL like https://random-name-12345.netlify.app.
  4. Text or email that URL to every rep. They open it on phone or laptop.

Other free hosts: Vercel, Cloudflare Pages, GitHub Pages. All free for this use.

Option B — Direct: send the file (no hosting)

Email or AirDrop the .html file. Each rep saves it and opens it in their browser. Works but messier on mobile (download → find file → open).

📲 Install on a phone (after Option A)

Once you have a hosted URL, reps can install it as an app:

  • iPhone: open URL in Safari → tap the Share button → Add to Home Screen. Real app icon, fullscreen, no browser chrome.
  • Android: open URL in Chrome → tap menu → Install app. Same deal.
  • Mac/Windows desktop: open URL in Chrome/Edge → click the install icon in the address bar (looks like a screen with arrow).

App icon is built-in — bright blue/purple gradient with a microphone. Looks like a real native app.

📵 Mobile reality check

  • Voice input works on iPhone (Safari) and Android (Chrome). Firefox mobile = no voice.
  • ElevenLabs voice playback works everywhere. Browser TTS varies by phone.
  • Browser AI (WebGPU) does NOT work on mobile — stick with the cloud API path. Reps just use the embedded Anthropic + ElevenLabs keys, or paste their own.
  • If reps see "Load failed" in iOS Safari with direct Anthropic, the tool now auto-prompts them to switch to OpenRouter (which works everywhere).

🔐 Important — keys are embedded

This file has Solarking's Anthropic + ElevenLabs API keys baked in for instant use. Before sharing this file with reps, decide:

  • Share as-is: reps use your accounts. Easy, but they spend your credits and could expose your keys.
  • Better: in this file's source, find the EMBEDDED constant near the top of the script and remove the keys (set to empty strings). Reps then paste their own keys via the setup banner.
  • Best for teams: create separate API keys per rep (both Anthropic and ElevenLabs let you create multiple keys with usage limits) and embed those individually.

Quick start — ready in 2 minutes

1. Get a free Groq API key

Go to console.groq.com/keys ↗ → sign up free → create a key (starts with gsk_...).

Why Groq? Free tier gives thousands of requests/day. Responses in under 1 second. Uses Llama 3.3 70B — the same class of model ChatGPT uses. This is what makes it feel like talking to a real person instead of a toy AI.

Alternative: Cerebras ↗ is also free and even faster. Or use your own OpenAI key if you have one.

2. Paste the key in Practice → Save & Start

The setup banner on the Practice tab has an inline field — paste, click Save, done. The tool auto-tests the connection.

Offline option (slower, no signup)

If you don't want to sign up anywhere, expand the "Prefer no signup?" section in the setup banner. The tool can run AI entirely in your browser (~1GB one-time download). It works offline but can be slow on older laptops (5-60 seconds per response). Groq is dramatically better for real-time practice.

2. Pick your scenario + difficulty

  • Full role-plays — the door-knocking pitch and the in-house presentation
  • 🔥 Rapid-fire drills — 3-second reflex training for specific objections
  • Difficulty: 🟢 Easy (flow) → 🔵 Medium (realistic) → 🟠 Hard (logical) → 🔴 Nightmare (killer mode)
  • Language: English or Spanish

3. Train — hit the mic and talk

The AI plays the customer. It sticks to the script when you stay close, reasons from your framework when you go off-script, and adjusts difficulty based on your selection.

4. End & Coach — get feedback

When you're done, click End & Coach. The AI reviews the whole conversation and grades you on control, tie-downs, pain-building, "if you qualify" usage, and whether you rushed the close.


Browser requirements

  • Browser AI (default, recommended): Chrome 113+ or Edge 113+ on a computer with 8GB+ RAM. Not supported on Safari or Firefox yet (no WebGPU). Mobile browsers don't support it either.
  • Voice recognition: Works in Chrome, Edge, Safari. Firefox doesn't support it — use the "Type instead of speak" option.
  • Fallback: If Browser AI doesn't work for you, switch to External API in Settings and use Groq's free tier (signup at console.groq.com, ~5 minutes).

Why this is cheap/free

Voice-to-text and text-to-speech use the browser's built-in Web Speech API — zero cost, zero tokens. With Browser AI, the reasoning also runs locally. Total ongoing cost: $0.

Sharing with reps

This is a single HTML file. Email it, drop it in a shared drive, or host it on any static site. Each rep opens it in their browser. Their framework, scripts, and settings are saved in their browser's local storage (not shared between computers).

Trouble? Fixes

  • "WebGPU not supported" → You're on Safari, Firefox, or an old Chrome. Update Chrome, or use External API (Groq).
  • Model download is slow → ~900MB is a lot on slow WiFi. Try at home over a fast connection the first time. After that it's cached.
  • "AI not loaded" after clicking Load → Refresh the page, wait 5 seconds, try again. The WebLLM library loads from CDN on page open.
  • AI responses feel bad → Try a bigger model in Settings (Llama 3.2 3B or Phi 3.5 Mini). Better reasoning, slower download.
  • Mic doesn't work → Click the browser's mic permission icon in the URL bar. Or use "Type instead of speak".