Work Header

Old Enough

Work Text:

The boy stumbled out of the bar alone, barely keeping his feet, and rushed around to the side of the building. Jeff walked casually down the sidewalk to keep him in view, coming to a halt under a streetlamp and pausing to light a cigarette. He glanced up without lifting his head to watch as the boy staggered back and forth in the alleyway, bouncing off the rough brick walls before finally doubling over, one hand still stretched up against the brick. Jeff couldn’t hear the boy’s retching over the sounds of the bar and the city and his own thudding heartbeat, but he watched as the boy’s spasms gradually subsided and he slid down the wall to his knees to catch his breath.

Jeff chose his moment and crossed the street, aiming right for the alley. The boy didn’t hear him coming, didn’t notice him until Jeff was almost on top of him. He tipped backward, catching himself on the disgusting ground.

“Steady,” Jeff murmured, extending a hand to catch the boy’s shoulder. He pulled the boy vertical again and wordlessly offered to help him to his feet. The boy refused, pushing himself up on his own and biting back a groan.

“Get away from me,” he said, his voice shaking. He didn’t meet Jeff’s eyes.

“How old are you?”

“Not old enough for you,” the boy snapped.

“But old enough to drink,” Jeff replied, lips quirked in a knowing smile. He took a drag off his cigarette and offered the pack to the boy. Surprisingly, he didn’t grab for it.

“I don’t smoke,” he said uncomfortably.

“No, that’s right, you just let men buy you drinks until you puke.”

“That’s not what—”

“I’ve been watching you.”

“What’s that supposed to mean? Fucking pervert.”

Jeff tilted his head in a half-nod. “Maybe I am. But what does that make you?” The boy didn’t respond, looked too shocked to speak. He was suddenly pale, freckles standing out harshly across his nose. Jeff held out his hand again. “Come with me, kid. I’ll get you cleaned up, get you some water, maybe a breath mint.”

“Wash my mouth out so you can fuck it?” the boy asked bluntly.

“Nothing you haven’t done before with any number of guys,” Jeff pointed out. The boy’s lips, flushed pink and plump, parted in surprise, maybe betrayal. Realization, certainly, that Jeff had been watching him. Jeff grinned, too satisfied with the boy’s reaction to hide it. “You thought I was lying.”

“How long have you been watching me?” The boy’s voice shook and he took a step backward, shoulder brushing the brick wall.

“How long you been coming to this bar? I’m guessing you were sixteen, or thereabouts. Which would make you—”

“Still too young for you,” he insisted.

“How old are you? I don’t want to know what it says on your ID, son, I want to know how old you are.”

The boy’s pretty face twisted into a grimace. “Will it make a difference?”

Jeff reached out to stroke the kid’s cheek, smooth out the frown. The boy winced and ducked his face away, but he couldn’t hide the red flush that stained his skin.

“What, is it because I didn’t buy you a drink first?” Jeff murmured, stepping close enough to trap heat between their bodies. “What makes me different than the assholes in there that wait until you’re drunk and pliant, halfway to unconscious before they use you? I know it’s not my age, and I ain’t vain but I know it’s not my looks. Don’t forget, I’ve seen the kind of guys that fuck you. How old are you, sweetheart?”

“Seventeen,” the boy breathed, still hiding his face.

“More than old enough for me,” Jeff whispered, bending to kiss the boy’s cheek. “Tell me your name.”

“You don’t know it?”

Jeff bit his ear gently, then ran his tongue up the outer curve. “I’ve heard you answer to slut, bitch, whore... cocksucker... I want to know your name.”


“You’re lying to me.”

The boy’s head whipped up and Jeff saw a flash of defiance in his bright green eyes, a flash of the spirit he’d been enchanted with rise to the surface. “So what if I am?”

“Fine. Justin.”

“You gonna fuck me or can I go now?”

“You don’t wanna be here,” Jeff said with a soft smile. “Is it because I haven’t paid you?”

“I’m not a hooker,” Justin ground out through clenched teeth. He pushed away from Jeff, just barely enough to put breathing space between them.

“No?” Jeff watched Justin’s bravado slip, watched the mask crack a little with confusion. Jeff curled his lips into a smirk. “What do you call all those drinks if not payment?”

Justin shrank away, flattening himself against the brick, but it wasn’t hard for Jeff to close the distance again, press himself flush to the boy’s chest. It was easy to loom over him, even as tall and gangly as Justin was; Jeff had a few inches on him and more than enough bulk to crowd him against the wall.

“That’s all you are, Justin,” Jeff said, lowering his voice into something more threatening. “You’re just a whore that isn’t even good enough for cash. A couple’a shots, maybe a beer, and you’re up for anything. Anyone. Anytime. I’ve watched you for months, boy, I know how you work. But maybe you don’t even see it.”

“It’s just sex,” Justin panted, and he trembled against Jeff but Jeff could feel the firm line of Justin’s cock against his thigh.

“I think those men are just satisfied customers.” Jeff reached down and brushed over Justin’s crotch, teasing, heading for his own pocket. He pulled out a ten dollar bill and held it up between their faces. “That’s more than enough for a beer. What’ll it get me with you?”

Justin stared at the bill, eyelids heavy as he considered the offer. Jeff watched the emotions shift in Justin’s ridiculously green eyes. He hadn’t ever been close enough to really see the boy’s eyes before tonight. Finally, Justin’s lips pinch together in an unhappy smirk.

“One beer ain’t enough to get me drunk, old man.”

Jeff chuckled, stepping back to dig into his pocket once more. He pulled out a folded wad of cash and counted out two twenties, added them to the ten in his other hand. He tucked the bills into Justin’s waistband and said, “You drive a hard bargain. Now get on your knees.”

Justin made a show of stuffing the money into his underwear. He raised an eyebrow at Jeff but nonetheless slid down to his knees, saying, “Oh, is that all? I thought you were better than that.”

Jeff grabbed a handful of the boy’s spiky hair and dragged him forward, pulling his face against Jeff’s thigh. With his other hand, Jeff rubbed his cock through his pants, right in front of the boy’s nose. “This is just to get acquainted. You’re coming home with me. Justin.”

The kid didn’t argue, but he didn’t move either. Jeff let go of him so he could get his fly open, his cock pulled out to press against the boy’s cheek. Justin breathed harshly, but he didn’t seem nervous. He watched Jeff’s hands, his cock, then drifted forward and kissed the root of it, right near Jeff’s thumb. Jeff slid his hand up, pressing his cock firmly against Justin’s face with his palm as he cupped his fingers down under the boy’s chin.

“Show me what a good little cocksucker you are, sweetheart,” Jeff murmured, staring down at the top of Justin’s head, the slope of his nose, the freckles splashed across it standing out in sharp relief even in the low light.

Justin leaned his head back and licked his lips, and fuck, he looked like a porn star there on his knees, glistening wet with spit. Jeff grasped the base of his cock with one hand and a handful of Justin’s hair with the other and drew him in, thrust right into that plush mouth.

Justin knew a thing or two about sucking cock, that much was clear, and he didn’t gag when Jeff pushed hard into the back of his throat. He swallowed, muscles fluttering around the head for a brief, perfect moment, and pulled back to catch his breath, his tongue playing around the slit and sucking the precome out of him as it appeared. Justin moaned and traced the flared head of Jeff’s dick with his tongue before tightening his lips and hollowing his cheeks, looking like a kid with a lollipop.

“Fuck, yeah, that’s it,” Jeff said as he scratched his nails lightly around the crown of Justin’s skull. Justin reached up and rested both hands on Jeff’s thighs, fingers clenching and wrinkling his slacks, and sunk down again on his cock. He pushed far enough to bury his nose in the coarse thatch of hair, and Jeff threw his head back as Justin’s throat squeezed around him. In all his months of spying, he’d never realized how good the kid was at this. It wasn’t much longer before Justin had Jeff biting back groans and holding Justin’s head still as he fucked in hard.

He finally pushed Justin away and the kid fell back to sit on his heels, out of breath and wet all down his chin with spit. His lips were flushed and bruised dark, and his long eyelashes fluttered open, revealing those glinting green eyes as Justin looked up and met Jeff’s gaze. Jeff held him in place and jacked himself furiously, fully intent on coming all over the kid’s face.

Justin didn’t even flinch when Jeff’s come splashed across his cheek. It dripped down onto his lips and he didn’t lick it off, just let it sit there like smears of pearly white gloss. He didn’t take his eyes off Jeff, either, and didn’t move when Jeff let go of his hair. Jeff took a moment to compose himself, tuck his cock back into his pants and zip up, smooth down his clothes as if nothing had happened.

“Not bad,” Jeff said with an easy, teasing smile. Justin’s lips stretched into a smirk. He looked positively obscene. “C’mon, I don’t live far from here.”

He pulled Justin to his feet and when Justin made no move to wipe his face, Jeff dragged his thumb through the streaks of come and pushed it into the boy’s mouth. Those pretty pink lips pursed around him, yet another tease, and Jeff groaned.

“Worth the price?”

“You know it,” Jeff replied. “Now I just need to see if your ass is as good as that pretty mouth.”

Justin resisted when Jeff tried to tug him towards the street. “I can’t.”

“What,” Jeff laughed, “you suddenly got a curfew?”

“I don’t go home with guys.”

Jeff studied him for a moment, then curled his hand around the back of the boy’s neck to draw him close. “I’m the exception,” he murmured, bumping their noses together. “I paid for you, and I’ll have you wherever I want.”

He leaned in and pressed his lips to the boy’s tight frown, expecting another fight, but Justin opened for him almost immediately. He let Jeff kiss him, suddenly pliant, and when Jeff pulled back, all Justin said was, “Okay.”

The walk to Jeff’s apartment was short and they leaned against each other the whole time. Jeff’s arm around the boy’s shoulders kept him close, but Justin snuggled in, rubbing his cheek against Jeff’s shoulder like a lover might. Jeff wondered how they must look; too close for friends, too intimate for a father and son. Just a regular couple heading home after a night out, he supposed.

Justin didn’t take his hands out of his pockets the whole way up to Jeff’s door on the third floor, but once they were inside, he seemed to want to touch everything. He traced the arm of the stone figurine on the table in Jeff’s entryway, eyes darting around curiously, then slid his fingertips through the pile of mail beside it, disrupting the orderly stacks. He touched the corner of the table, the light switch, the doorframe.

“Nice place,” he finally said, spinning around to face Jeff again. “Why’d you bring me here?”

“To fuck you,” Jeff replied simply.

“You know how dangerous that is?” Justin grinned, his green eyes sparkling with amusement. “I could be a psycho.”

Jeff made a show of looking him up and down. “I think I could take you.”

Justin shrugged. “How do you wanna do this? You got a bed?”

“Through there.” Jeff nodded in the direction of his bedroom, then said, “Go wash up, brush your teeth. Take off your clothes.”

“I don’t—”

“I know you don’t, but I want you to. I’m the exception, remember? This isn’t a dirty alleyway, kid. I wanna see you naked.”

Justin disappeared into the bathroom and Jeff heard the water run. He busied himself with setting out condoms and a bottle of lube, then started to undress himself. He only had his shoes and socks off by the time he heard the water shut off in the bathroom, and the door swinging open surprised him. Justin stood there, framed by the bathroom light, awkwardly holding the edge of the door like he didn’t know what to do with his hands. He made no move to cover himself.

“Turn off the light,” Jeff said, “and come here.”

Justin flicked off the harsh bathroom light and slowly walked around the bed to stand in front of Jeff. He was long and lean, not as gangly as Jeff had originally thought; broad shoulders and narrow waist, and firm, defined muscles in his stomach.

“You play sports?” Jeff asked as he reached out to touch.

Justin nodded. His cock hung heavy and half-hard between his legs, and Jeff slid his hand down from Justin’s abs to cup it in his hand. Justin’s breath quickened.

“Get up there. Spread your legs.”

While Justin scrambled to obey, Jeff turned his attention to his clothes. He wasn’t wearing anything he’d feel bad about leaving crumpled on the floor, but he wanted to draw this out, make the kid wait. He had a naked boy in his bed, waiting for him. Waiting for his cock. That was something to savor.

He didn’t look at Justin again until his clothes had been put away, his jacket hung with care. He turned around and found Justin shifting restlessly on the bed, grinding his hips slowly down against the mattress, his ass flexing with the motion. His hands were shoved up under the pillow on either side of his head, and his mouth was open, pink and wet as he panted. Jeff climbed onto the bed, into the space between Justin’s long legs, and slapped his hand lightly against that gorgeous ass.

Justin yelped, surely out of surprise more than pain, so Jeff did it again. One pink handprint on each cheek. The boy’s pale skin colored easily.

He reached over to the nightstand for the lube and condom and didn’t waste much time on preparation. Justin’s ass opened for his fingers and he smeared lube inside and out, slicking him up enough without stretching him out too much.

“Gonna be so fucking tight for me, aren’t you?” Jeff murmured. He was hard again, desperately so, as if he hadn’t just come earlier in the night. Justin only moaned in reply and Jeff spread his cheeks and pushed into the boy’s ass.

“Oh, fuck!” he cried. “Christ, you’re…”

“Tell me.”

Big, you’re fuckin’ big! Jesus.”

Jeff let out a low, breathy laugh and pressed his mouth to the back of Justin’s neck, his teeth and lips sliding and scraping against skin. “Tell me how much you fuckin’ love it.”

“I do, I love it, fuck,” Justin moaned. “Oh!”

“Yeah,” Jeff said. “You’re so tight, sweetheart. So perfect.”

It didn’t take long, with Justin’s ass squeezing around him, for Jeff to finish. He stayed on top of Justin, grinding into him while Justin rocked and moaned, struggling to get himself off without touching himself or dislodging Jeff. Jeff finally took pity on him and rolled them over, pulling the kid up onto his chest and holding him there with a heavy arm across his torso. With his free hand, he grasped the boy’s cock and stroked furiously, tightening his fingers around the head to drive Justin crazy. Jeff’s cock was still wedging him open, and Justin’s head was thrown back in the crook of Jeff’s neck. He moaned and cried and held tight to Jeff’s arm like a lifeline, and finally came, splattering come all over both of them.

Jeff chuckled and wiped his hand on Justin’s hip. “Definitely worth the price.”

Justin rolled off him, sprawled across the bed at Jeff’s side with no thought to cleaning himself up. Jeff took off the condom and knotted it, tossed it over the side of the bed and figured he could deal with it later. The kid was snuggled up against him, one arm thrown across Jeff’s chest, and he was breathing like he’d just run a marathon, obviously in no condition to banter.

Jeff held him for a while, until they’d both calmed down, and Justin started scratching his fingers through the fuzzy hair on Jeff’s chest.

“I’m not a whore,” he said quietly.

“You got no problem taking the money I gave you,” Jeff pointed out.

The boy was silent for a moment. “My name’s not Justin, you know.”

“I know.”

“There’s nothing wrong with wanting sex. Right?”

It sounded to Jeff like he was actually looking for an answer, or at least reassurance. He kissed the top of the boy’s head. “Nothin’ at all.”

“I’m not like the other kids at school,” he muttered. “I can’t get a boyfriend and have sex at home like normal kids. I have to go out.” He sounded defensive, like he expected Jeff to care where he snuck out to after dark.

“I’m not your dad, kid.”

Justin huffed a bit and pushed himself out of Jeff’s arms. “I know,” he said forcefully, not meeting Jeff’s gaze. He went to the bathroom to collect his clothes and pulled them on haphazardly. The money Jeff had given him fluttered to the floor. Justin bent to pick it up, then held it out to Jeff.

“Keep it.”

“No, I shouldn’t’ve—I don’t want it. I’m not a fucking whore.”

Jeff sat up and stared the kid down. Justin held his gaze for a brief moment, then looked back down at the floor. Jeff smiled and reached for the pack of cigarettes he kept on his nightstand. “Keep it and go home. And maybe next time, you find me before you settle for the first guy to buy you a drink.”

Justin’s expression smoothes out and he meets Jeff’s eyes again. This time the fire and sparkle is back in them. “Maybe next time you should just buy me a drink.”