Shelby’s heart raced as she checked the clock again. Ten minutes until her friend Jess arrived. They had planned to spend a day in town, window shopping, have some lunch, and have a much-needed catch-up. But as Shelby moved around her flat that morning, she couldn’t shake the restless, simmering heat inside her. Maybe it was the vivid dream she’d woken from, or the way her thoughts kept drifting back to Jess’s easy laugh and the memory of their last hug goodbye. Whatever the reason, the ache between her legs had been building all morning, impossible to ignore. If she hurried, maybe she could take the edge off before Jess arrived.
She’d tried to distract herself with cleaning, scrolling through her phone, even making a cup of tea, but nothing worked. The throbbing need was insistent, impossible to ignore. If she hurried, maybe she could finish before Jess knocked at the door. Jess always knocked, always waited for her to answer. The risk felt manageable, almost safe.
Shelby glanced around the living room, making sure the curtains were drawn and the front door was locked. She tossed her phone onto the coffee table, her pulse fluttering in her throat. She kicked off her slippers and slid down into the cushions, yanking her leggings and panties down just enough to bare herself to the cool air. The contrast made her shiver, goosebumps prickling along her thighs.
She let her head fall back, eyes fluttering shut for a moment as she let herself sink into the sensation. Her fingers found their way between her legs, sliding over slick, swollen flesh. A gasp escaped her lips, louder than she intended, but the house was empty, at least for now. She pressed her palm flat against her mound, savoring the pressure, then let her middle finger circle her clit in slow, deliberate strokes.
She tried to conjure up her favorite fantasies, the ones she usually saved for long, lazy mornings in bed. But today, every image in her mind was of Jess, Jess’s laugh, Jess’s eyes, the way Jess’s lips curled in a half smile when she was about to say something wicked. Shelby imagined Jess walking in, catching her like this, legs spread, fingers working furiously, breath coming in ragged gasps. The idea sent a bolt of heat through her, her hips arching up to meet her hand.
She opened her eyes, glancing at the clock again.
Nine minutes.
Her heart hammered faster. She didn’t have time to tease herself, to draw it out the way she loved. Every second counted. She increased the pressure, her fingers moving faster, desperate for release. The wet, urgent sound of her fingers filled the room, mingling with her quickening breaths.
Shelby’s mind raced. What if Jess arrived early? What if she knocked while Shelby was still in the throes of pleasure? She pictured herself scrambling to pull up her leggings, cheeks flushed, pulse racing, trying to act casual as she answered the door. The risk made her even wetter, her need sharper, more insistent. She squeezed her eyes shut, trying to focus, but her thoughts kept looping back to Jess, Jess’s hands on her, Jess’s mouth, Jess’s voice in her ear.
She shifted her hips, spreading her legs wider, chasing friction. Her free hand gripped the arm of the sofa, knuckles white. She could feel the orgasm building, a tight coil of pleasure deep in her belly, ready to snap. She bit her lip to stifle a moan, her body trembling with anticipation.
Eight minutes.
She glanced at the clock again, panic and excitement twisting together in her gut. She imagined Jess’s car pulling up, the sound of footsteps on the path, the sharp rap of knuckles on the door. She had to finish. She had to. She pressed harder, her fingers moving in frantic circles, her breath coming in short, desperate gasps.
Shelby’s mind flickered with images, Jess’s eyes widening in surprise, a slow grin spreading across her lips, maybe even a flash of interest. Would Jess be shocked? Amused? Secretly turned on? The uncertainty sent another wave of heat through Shelby, her thighs tensing, her toes curling. She was so close, so achingly close.

She heard a car outside; her heart lurched in her chest. Was that Jess? She froze, listening, her fingers hovering just above her clit. Silence. She let out a shaky breath, relief and disappointment mingling in her chest. She couldn’t stop now. She couldn’t.
She plunged her fingers back down, moving faster, harder, chasing the edge. The world narrowed to the heat between her legs, the slick slide of her fingers, the wild, unstoppable need. She could feel the orgasm cresting, just out of reach, her body straining for release.
The front steps creaked. Her heart skipped a beat.
Not yet, not yet, just a few more seconds…
The tension snapped. Pleasure detonated, just as the door swung open.
Jess stood in the entryway, bag slung over her shoulder, eyes wide, mouth open in shock. She held aloft the spare key to Jess's flat, whatever she was about to say dying on her lips as she froze, jaw slack, breath caught, stunned by the sight of Shelby mid-climax.
Shelby couldn’t stop. Her back arched off the sofa, heels digging into the cushions. Her thighs clamped around her hand, muscles taut and shaking. Her mouth fell open, a strangled moan escaping before she could bite it back. Her vision blurred, white sparks bursting behind her eyelids. Heat flooded her body, skin prickling, heart pounding so loud she could barely hear Jess’s breathing. Every nerve was on fire, her hips jerking helplessly as the orgasm tore through her, wave after wave, raw and overwhelming.
Fragments of thought flickered and vanished.
Jess is here, I can’t stop, she’s watching, oh god, don’t stop, don’t stop, until all that was left was sensation.
Shame and panic tried to claw their way in, but pleasure drowned everything else out, leaving her breathless and wrecked.
Her fingers finally stilled, locked in place, as aftershocks rippled through her. Her breath came in ragged gasps, chest heaving, muscles trembling, and spent.
For a moment, neither of them moved. Jess lingered in the doorway, her face a mix of shock and something else, cheeks flushed, gaze flicking from Shelby’s face to where her fingers still rested between her thighs. The silence stretched, charged and awkward, before her lips parted in a slow, wicked grin. She set her bag down, never breaking eye contact.
“Well,” she said, voice low and teasing, “should I give you another minute, or… so, are we still going out, or staying indoors?” She let her gaze roam slowly over Shelby’s body, lingering on her bare thighs, her smile turning positively devilish. “Because honestly, the view in here is… spectacular.”
Shelby’s cheeks burned, but she couldn’t help laughing, breathless and exhilarated. “Guess you’re early.”
Jess stepped closer, gaze flicking from Shelby’s flushed face to her still, bare thighs. “Or maybe I’m right on time.” She sat beside her, her knee brushing Shelby’s, the air crackling between them. Her hand lingered on Shelby’s knee, thumb stroking slow, lazy circles.
She leaned in, her voice a soft whisper meant just for Shelby. “Next time, maybe I’ll help you finish. Or maybe I’ll just watch again. Depends on how daring you’re feeling.”
For a moment, neither of them spoke, just the sound of their breathing, the aftershocks still humming in Shelby’s body.
Finally, Jess nudged her gently, her voice softer but still playful: “So… what now?”
Shelby grinned, still tingling, and let the question hang, the possibilities wide open.