Playing With The Numbers: A SwapService Story
I was lying in bed scrolling through Grindr with one hand, the other resting on my stomach. The apartment was quiet except for the low hum of the fan. It was a Thursday night and I wasn’t expecting much — just killing time before I passed out.
I swiped past a few generic torso shots and blank profiles when a new face popped up. My thumb froze mid-air.
Ryan Callahan. Coach Ryan. My high school swimming coach. For four years I had shamelessly tried to get his attention. I used to “accidentally” flex every time I climbed out of the pool and knew he was watching. I’d linger in the locker room with my towel slung low, joking around with the other guys while making sure he got a good look. I was still deep in the closet back then, so I played it off as regular jock shit. But he never took the bait. Never even gave me a second glance that I could tell.
Now here he was. Less than three miles away. Active twenty minutes ago.
Now forty years old, he had a beard with streaks of gray, short hair going silver at the temples, and the same heavy, hairy chest I used to stare at every day in high school. He was shirtless in the bathroom mirror selfie. His shoulders and pecs still looked solid, the dark hair across his chest even thicker than I remembered. The profile listed him at 5'11", 205 lbs, and looking for “fun, no strings.”
My heart started beating harder. I let out a slow breath and tapped the message button.
Before I could even type anything, the typing bubble appeared.
“Fuck dude you’re super cute.”
Two pictures followed right after. The first was a close-up of his cock, thick and heavy, hanging soft but already filling out. The second showed the same dick gripped in his hand, now mostly hard, head flushed dark. A thick vein ran along the top. His hand looked big around it.
I was practically salivating.
“Damn, you don’t know how happy I am to hear you say that,” I replied.
He didn’t waste any time.
“Looking to get off tonight. You down?” He said.
“I have work in the morning but fuck it. Send me the address.” I responded.
Twenty minutes later I stood outside his apartment door on the third floor of a quiet building a couple towns over. My heart was pounding hard. I knocked twice.
Ryan stood there shirtless in nothing but a pair of gray sweatpants sitting low on his hips. His chest and stomach were covered in dark hair mixed with gray. His shoulders and arms still carried the muscle from years of coaching and lifting. He looked at me with heavy, hungry eyes and stepped aside.
“Holy fuck,” I said under my breath as I walked in.
He closed the door, turned to the kitchen counter, and poured two glasses of whiskey. He handed one to me. I took a sip. The burn went straight down.
Ryan didn’t speak. He stepped closer, set his glass down, and reached for my shirt. His thick fingers undid the top three buttons smoothly. Then he leaned in, pressed his mouth to the side of my neck, and started kissing me there. His beard scratched against my skin. One hand slid under the back of my shirt, rough and warm as it moved up my spine.
I took another sip of whiskey while his mouth worked lower, sucking lightly at the spot where my neck met my shoulder. His other hand stayed on my lower back, pulling me closer until my hips bumped against his.
We never finished the drinks. Ryan took the glass from my hand, set it aside, and nodded toward the hallway. I followed him into the bedroom. The only light came from a small lamp on the nightstand. The bed was already turned down.
He pushed the door shut and took full control. He stripped the rest of my clothes off slowly, then shoved me back onto the bed. He climbed on top of me, his heavy, hairy body pressing me into the mattress.
He took his time. He pushed my legs up and back, then buried his face between my cheeks. His beard rubbed rough against my skin while his tongue worked me open, slow and wet. I gripped the sheets and let out low groans every time he pushed deeper. He kept going until my hole was slick and relaxed.
When he finally pulled back, he grabbed a condom, rolled it on, and lubed up. He lined himself up and pushed inside me. The stretch burned at first, but once he was all the way in, pure bliss took over. Ryan fucked me deep and steady, his hips rolling in a strong, controlled rhythm. His hairy chest hovered over me as he held my legs open. Every thrust felt better than the last.
We fucked for at least half an hour. The room filled with the sound of skin slapping skin and my moans growing louder. Ryan stayed in charge, shifting angles until he hit the spot that made my back arch off the bed.
Finally I couldn’t hold back anymore.
“Please take off the condom,” I said, voice rough.
Ryan paused mid-thrust, eyes dark. “Fuck kid, you don’t have to tell me twice.”
He pulled out, ripped the condom off, and tossed it aside. His bare cock looked even thicker now, slick and flushed. He pushed back inside me in one smooth motion.
He leaned down closer, still fucking me deep. One big hand wrapped around my lubed cock and started stroking me slowly, twisting at the head on every upstroke. His other hand found my left nipple, rolling and pinching it. Then he leaned in and kissed me, beard scratching my face, tongue sliding into my mouth.
That pushed me over the edge. My whole body tensed and I came hard, shooting across my stomach and chest while he kept stroking me through it. My hole clenched tight around him.
Ryan lasted another five minutes. His thrusts got shorter and harder. Then his breathing changed. He buried himself deep, let out a low guttural groan, and came. His face twisted in the hottest way — jaw tight, eyes half-shut, mouth open just enough to show his teeth. I felt every pulse as he filled me up.
He stayed inside me for a long moment afterward, both of us breathing hard. His sweaty, hairy chest pressed against mine while his cock slowly softened.
We lay there in the afterglow, bodies slick with sweat. Ryan’s heavy chest rose and fell against my side, his arm resting across my stomach.
After a few minutes he turned his head toward me.
“You clean?” he asked, voice low and rough.
I let out a small laugh. “Damn Coach, don’t you trust me?”
Ryan gave me a strange look and pushed himself up on one elbow.
“Wait, fuck… do you know me?”
What a weird way to phrase that question, I thought.
“Yeah Coach,” I said. “I was on your team for four years. You made me captain senior year. Don’t you remember?”
His face changed. “Fuck… shit shit.” He rubbed a hand across his face. “He told me not to do this. He’s gonna be pissed.”
He stared at the ceiling, then shrugged. “Oh well. Nothing I can do about it now. Guess it’s his problem.”
“What are you talking about?” I asked.
Ryan let out a long breath. “This isn’t my real body. I’m not actually Ryan. My name is Cruz. We swapped for a few days using this site called SwapService.”
I stared at him. “Swapped?”
“Yeah. Ryan and I swapped bodies.” He ran a hand through the short graying hair. “How it works is you enter your own body stats — height, weight, age, build, everything. Then you put in the type of guy you want to swap with. The site gives you compatibility percentages with people looking to swap. Ryan and I hit like 85%.”
I stayed quiet for a second, then asked, “Why would Ryan ever want to swap?”
Cruz scratched at the thick hair on his chest. “I don’t remember every detail, but he said he’s been reckoning with his sexuality. He wanted to experiment with being an openly gay man for a few days. Guess he’s been in the closet a long time.”
He shrugged Ryan’s broad shoulders.
“The only rules he gave me was to stay DL and safe. He’s not out to anyone, not even his doctor, so he’s not on PrEP. He didn’t want it getting back to anyone he knows. So fucking one of his old swimmers raw…” He let out a short laugh. “That was a double no in his book.”
I looked at him and gave a stunted, incredulous laugh. “So do you swap often then?”
Cruz laughed low in Ryan’s deep voice and scratched at the thick hair on his chest. “Oh, I do it all the time. I like being older muscle hunks. Lets me fuck guys like you.” He looked me up and down slowly, eyes still hungry. “Young, lean, blonde jocks with tight asses. Never gets old.” He reached over and gave my thigh a squeeze before continuing. “And you felt even better and tighter than most.”
I felt my face heat up. Cruz leaned back against the pillows, looking completely relaxed in Ryan’s body.
I couldn’t stop myself from asking more. I was dying to know what kind of guy Ryan would actually trade this body for.
“So… what kind of body did you leave behind?” I asked, trying to keep my voice casual. “You must have offered Ryan something he really wanted if he agreed to the swap.”
Cruz grinned, Ryan’s bearded face looking amused. He reached over to the nightstand, grabbed his phone, and scrolled for a second before turning the screen toward me. The photo showed a 23-year-old Latino guy with a muscular twink build — smooth tan skin, sharp jawline, dark hair, and a tight six-pack. He was shirtless in a gym mirror, flexing with a cocky smile.
“That’s me,” Cruz said. “My real body.”
He locked the phone and tossed it back onto the nightstand. “I don’t like being a twink. Never have. So I swap all the time. Usually, once I’m a few days into a swap and the guy is really enjoying himself, I ask if he wants to make it permanent. Still haven't gotten on to say yes though. It's a big commitment I guess and I only offer to swap with the hottest guys.”
Cruz shrugged Ryan’s broad shoulders, his thick fingers idly scratching through the graying hair on his chest.
“I haven’t asked Ryan yet, though. Wasn’t sure how he’d react.”
My mind started spinning with possibilities.
If Ryan was willing to swap with a guy like Cruz — a complete stranger — then maybe he’d be open to swapping with me too. And if he liked being in my younger, lean, blonde body… maybe he’d agree to make it permanent.
All of the sudden, I pictured myself waking up inside Ryan’s body for good. Looking down at this thick, hairy chest every morning. Feeling the weight of these heavy muscles. Walking around with this deep voice and this powerful build. My cock started getting hard again just thinking about it, twitching against my stomach as the fantasy took hold.
Cruz noticed immediately. His eyes dropped to my growing erection and a slow, knowing smirk spread across Ryan’s face.
“Looks like you’re ready for round two already.”
He rolled on top of me again and pushed my legs apart. “And for the rest of the night, you still call me Ryan. Got it?”
“Yes, Ryan,” I breathed, voice already thick with need.
He lined himself up and slid back inside me raw, slow and deep. I groaned loudly as he bottomed out.
Ryan started thrusting in a steady, powerful rhythm, his heavy, hairy body moving over mine.
With every thrust, I imagined running my hands over this thick chest, feeling the weight of Ryan’s muscles under my fingers.
He picked up the pace, hips snapping harder as he drove deeper into me.
I pictured myself lifting his arm and burying my face in his hairy pit, inhaling his scent while I was in his body.
Cruz leaned down, beard scraping against my neck as he growled in my ear, “You like that, kid?”
Another deep thrust made my back arch.
I imagined wrapping my hand around Ryan’s thick cock — my new cock — and jerking off slowly in front of the mirror, watching his body respond.
“Ryan… fuck, Ryan!” I cried out, voice breaking.
His thrusts grew rougher, the sound of skin slapping skin filling the room.
The more he fucked me, the more certain I became.
I was going to become Ryan.
He pinned my wrist harder to the bed, pounding into me with deep, possessive strokes.
I saw myself bending Ryan over in my old body, sliding this fat cock inside him and fucking him deep after he finally agreed to make the swap permanent. I imagined finally cumming inside him.
“Ryan… don’t stop,” I moaned desperately, my hole clenching around him.
Cruz leaned closer, voice low and rough against my ear. “You’re so fucking tight.”
Every powerful thrust pushed me closer to the edge while the fantasy burned hotter in my mind.
This body was going to be mine.