Chapter 1 - Opt-In
By any reasonable metric, Mira Solis should not be single.
Twenty-eight years old, three years at HeartSpark, and her most stable relationship was with her skincare routine.
She spent eight hours a day writing ad copy about other people falling in love, and still couldn’t get a text back from a man who once said, “We’re not compatible, my horoscope app told me.”
Her official job title at HeartSpark was “Senior Brand Storyteller,” which was corporate for “woman responsible for turning crushing loneliness into cheery push notifications.”
Tonight’s draft read:
Don’t let emotional stagnation turn you into an emotional raccoon digging through last year’s feelings. New matches are waiting!
Mira tapped her pen against her lips, evaluating the phrase.
“It’s too harsh,” Lili said over her shoulder, materialising like a tiny, judgmental spirit guide.
“Emotional raccoon is a legitimate behavioural archetype,” Mira protested.
“It’s unhinged.”
“It’s memorable. That’s marketing.”
Lili slid the laptop away. “And you’re still not allowed to bring back ‘stagnant swamp of poor life choices’ from yesterday.”
“But it was accurate!”
“It was depressing.”
“The app sells a fantasy,” Mira muttered, slumping back. “I’m just adding wildlife. World-building.”
Lili and Mira had been friends since their first week at HeartSpark—cubicle neighbours who’d bonded over shared horror at corporate icebreakers and had progressed to spare keys and 2 a.m. spiral texts.
The HeartSpark office stretched around them—white walls, exposed brick, plants trying and failing to thrive under string lights. Outside, early spring light made the wet sidewalks shine. Inside, it resembled someone's Pinterest board come to life.
Mira’s desk was a small rebellion against corporate beige: a printed photo of a Kyoto ryokan pinned to her board—the one with the private onsen she’d been saving for years, cut from a travel magazine and pinned like a promise—a tiny Eiffel Tower paperweight from her aunt’s trip to Paris, a mug that said “I’d rather be somewhere else” in Comic Sans. Seventeen countries visited, and she wanted more. She’d bought the mug ironically. It had become sincere.
She fit right in with her pastel pink tweed set and black ribbon choker—very “K-drama lead who accidentally wandered into a start-up.” Lili, in her pleated mini skirt and chunky platform loafers, looked like she’d walked out of a Harajuku street snap.
“If I get laid off,” Mira said, “I’m going to write notifications for a meditation app. ‘Breathe, you anxious possum.’”
Amanda walked by, glanced at Mira’s screen, and stopped. “Emotional raccoon. I love it. Ship it.”
Mira blinked. “Really?”
“It’s weird enough to click on. That’s the whole job.”
Three years of copywriting, and she was still surprised when something actually worked.
Lili checked the time and winced. “All-hands in five. Amanda’s unveiling something big. Like ‘strategic pivot’ big, or ‘we’re a family, which is why this layoff hurts us too’ big.”
“Perfect.” Mira grabbed her iced coffee. “If I get fired, I can finally finish reorganising my skincare by expiration date.”
The main common area had doughnuts set out as an emotional buffer. A small stage stood in front of the giant HeartSpark logo: a minimalist neon heart with what was allegedly a “spark” but looked exactly like a Wi-Fi icon.
The room hummed. Someone from Engineering said active users were sliding. Someone from Product insisted they were “plateauing strategically.”
Mira reached for a chocolate-glazed, caught her reflection in the coffee urn, and switched to plain.
Her skin was clear now—had been for years. But this morning she’d still checked the mirror three times, fingers ghosting over her cheekbones, searching for imperfections that weren’t there anymore. The yearbook face—red, metal-mouthed, invisible—still lived in her head somewhere.
Lili nudged her, chin jerking toward the back. “Look. Data cave is emerging.”
The Engineers clustered in their usual corner. One of them caught Mira's attention because he stood out, even while doing everything possible to blend in.
Tall—easily a head above everyone else—slouched over his laptop in a dark, oversized hoodie and black jeans. His black hair fell in a wavy fringe that covered his brows and nearly hid his eyes behind black-framed glasses. Large headphones rested around his neck like a permanent “do not disturb” sign.
Next to the bright walls and Mira’s pink tweed, he looked like someone had dropped a walking grayscale filter into a lifestyle commercial.
His hand drifted to his ring—a slim silver band on his right hand—thumb pressing against it, turning it once. Twice. Then his fingers moved to his mug, adjusting it until the handle lined up perfectly with his laptop edge. The mug was matte black with white text: 404: SOCIAL LIFE NOT FOUND.
“Who is that again?” Mira asked, gesturing with her doughnut.
“Noah Park,” Lili said. “Senior Data Scientist. He’s been here about four years—built most of the matching algorithm, apparently. Only started coming to the office regularly like six months ago. Used to be fully remote.”
That explained why Mira had never noticed him before. Hard to build a reputation when you’re a black square on Zoom.
As if summoned, he muttered something to the engineer beside him, pointed at his screen, then sat back with the quiet satisfaction of someone who’d just deleted a bug and three people’s excuses.
“Of course, the algorithm guy has novelty mugs,” Mira said. “That’s how they get you. One funny mug and suddenly you’re letting a man explain correlation versus causation like it’s foreplay.”
Lili snickered. “Imagine being turned on by p-values.”
Mira choked on her doughnut.
Before she could recover, the lights dimmed. Amanda Cole strode onto the stage—sharply tailored emerald blazer, sleek bob, heels that could kill.
“Team,” Amanda said, voice smooth and amplified, “we have a problem.”
The first slide showed a line graph dropping like a doomed roller coaster. ACTIVE USERS.
“We’ve tried new features. Faster matches. Better filters. But something’s missing.” She clicked to the next slide: glossy photos of couples in golden hour lighting. “Our users want proof. Real people. Real love.”
Mira popped another bite of doughnut into her mouth. This was usually where Amanda said “authenticity” three times like a spell.
Instead, Amanda smiled in a way that made Mira’s skin prickle.
“That’s why we’re launching something bold.”
The screen flashed:
HEARTSPARK LIVE
Seven Dates. Thirty Days. One Algorithm.
The room perked up.
“Here’s how it works,” Amanda continued. “This week, everyone will receive an email to opt into a special internal experiment. From that pool, the algorithm will randomly select two employees. They’ll go on seven dates over thirty days. We’ll film highlights, live stream check-ins, and share the journey.”
She paused for effect.
“And next Thursday, we’ll run the match live, right here on this screen. You’ll see exactly what happens when we say HeartSpark works.”
Nervous laughter rippled through the crowd. Someone whispered, “They’re going to Hunger Games our love lives.”
“Because your time and privacy have value,” Amanda said, “let me be clear about what’s in it for our couple.”
The next slide appeared:
HEARTSPARK LIVE PARTICIPANT PERKS
• $20,000 post-tax bonus each
• 15 extra vacation days
• 1-month fully paid sabbatical after filming
• Fully paid dates, styling, therapy sessions
• Final cut review on major edits
The room actually reacted—soft oohs, someone in Sales whispering, “Twenty grand?”
Mira’s brain immediately calculated: Japan trip. The ryokan with the private onsen she’d been saving photos of for two years. New skincare. Three months without rent anxiety.
Across the room, Noah’s hand drifted to his ring again, turning it slowly. He wasn’t just a possible victim; he was the guy whose math would be blamed if two employees ended up throwing breadsticks at each other on camera.
“And just to be very clear,” Amanda said, “no one will be hand-picked. The system will choose both people from the opt-in pool. I won’t see the names until they appear on this screen next Thursday.”
She clicked to the final slide:
Opt-In Email: 4:00 P.M. Today
Live Match: Thursday, 4:00 P.M.
The meeting dissolved into excited chatter.
Mira stayed seated, staring at the condensation ring her coffee had left on her notebook. Her reflection looked back faintly: pink tweed, big eyes, doughnut crumbs.
Her last three almost-relationships had ended the same way. Everything would be going well—really well—and then: “I’m not ready.” “Bad timing.” “My ex texted.”
Never her, technically. But also somehow always her.
She was never the problem on paper. Just never quite enough to make them stay.
“Hey,” Lili said, dropping into the chair beside her. “You okay?”
“No. But my outfit is.”
“True.” Lili studied her. “You’re going to look amazing when the algorithm ruins your life in 4K.”
Mira let out a weak laugh. “I am not opting in.”
“Why not? You write half the copy about trusting the process.”
“I believe in getting paid. That’s not the same thing.”
Lili tilted her head. “Twenty thousand dollars. Fifteen extra vacation days. An entire paid month off. Free therapy.” She paused. “What if it actually works?”
Mira thought of the hours she’d spent polishing taglines about “real connections.” Of how small her own love life felt next to all the stories she sold.
“Then it works for someone else,” she said. “I would like to opt out of public humiliation.”
“Bold of you to assume humiliation isn’t coming anyway. At least this way there’s financial compensation.”
Mira wanted to argue, but Lili was already pulling her toward their desks.
Back at her desk, Mira caught her reflection in her monitor and automatically checked: ribbon straight, lipstick intact, no donut evidence.
“You look perfect,” Lili said without looking up. “You always do.”
Mira smoothed her collar anyway. Forty minutes this morning. Three outfit changes. Two makeup attempts.
By the time she left her apartment, she looked effortless.
Four o’clock came too fast.
Her inbox chimed:
Subject: Ready to Let the Algorithm Pick Your Next Date? 💘
Hi Mira,
Want to be considered for HeartSpark Live?
If selected, you’ll receive:
• $20,000 post-tax bonus
• 15 additional vacation days
• 1-month fully paid sabbatical
• Fully paid dates & professional styling
• 12 free therapy sessions
[I’M IN] [MAYBE LATER] [NO THANKS]
She stared at the buttons.
Lili messaged immediately.
Lili: So. Are we saying yes, or are we being cowards?
Mira: You can say yes. I’ll support you from my couch.
Lili: HR says I’m “too involved” with content 💀 You’re narratively perfect though.
Mira: That is NOT a compliment.
Lili: I mean, you write copy, you’re cute, you’re anxious in a relatable way—
Mira: So I’m good content.
Lili: …yes?
Mira: I hate everything about this.
Her phone buzzed again—her sister this time.
Alicia: Mom says you still work at that dating app. Any nice guys there? 👀
Alicia, three years older and perpetually convinced she knew better, had been married for four years and never let Mira forget it.
The universe had chosen violence today.
Mira looked at the email again. Twenty thousand wasn’t life-changing, but it was “finally book Japan” money. “Stop feeling guilty about expensive makeup” money. The vacation days were the real prize—actual time where no one could Slack her about Q3 metrics.
And maybe—just maybe—if she was going to keep writing other people’s love stories, she should see if the app she’d been selling actually worked.
Her cursor hovered over [NO THANKS].
One more year of writing push notifications about other people’s love stories. One more year of her sister’s texts. One more year of doing everything right and still ending up alone.
She clicked [I’M IN].
The button flashed: Thank you for trusting the algorithm. 💘
“Oh, that’s rich,” she muttered. “I’m trusting the paycheck. The algorithm is just the middleman.”
On the other side of the office, Noah stared at the same email.
He’d turned thirty last month. Ravi had gotten him a card that said “Welcome to your flop era”—accurate, since his last relationship had ended more than a year ago with “you’re too boring”—and a gift card to a climbing gym, because if Noah’s love life was going nowhere, at least he could climb somewhere.
The perks didn’t matter. The experiment didn’t matter. What mattered was that if he didn’t opt in, someone would ask why the Data Scientist didn’t trust his own algorithm.
Ravi leaned over his shoulder. “Come on. Live a little. What’s the worst that could happen?”
“Have you seen the internet?”
“You keep saying the algorithm is robust. Prove it. Also—twenty grand, fifteen days off, and a sabbatical? That’s upgraded life money. You could finally do Joe’s Valley.”
Noah considered. A month off with no meetings and fifteen extra vacation days sounded dangerously close to “worth it.” He’d been planning that climbing trip for two years.
His mouse hovered over [NO THANKS].
His thumb pressed against his ring, turning it once. Then he clicked [I'M IN] with the resigned air of a man accepting a bad A/B test.
That night, Mira lay in bed staring at the ceiling.
“Next Thursday,” she told the dark. “Just make it to Thursday without combusting.”
Across town, Noah sat at his kitchen table, laptop closed, nursing tea he’d reheated twice and never drunk.
On his calendar, a new block appeared:
THURSDAY 4:00 P.M. – HEARTSPARK LIVE MATCH (ALL-HANDS)
The algorithm selects Participants A and B (live).
From a distance, it was just another meeting.
Up close, it felt like a scheduled panic attack.
He wasn’t afraid the algorithm would break. He was afraid it would work perfectly and drag his name onto a giant screen while everyone clapped like it was a magic trick.
And then whoever got matched with him would spend thirty days discovering what his exes already knew: that the quiet guy in the back was exactly as uninteresting as he looked.
With any luck, he’d just be one of the dim dots on that visualisation—another anonymous data point that quietly faded out.
He closed his laptop.
Somewhere in a server room, the HeartSpark algorithm sat waiting:
THURSDAY 4:05 P.M. – RUN_INTERNAL_LIVE_MATCH()
It had no concept of bonuses, rom-com trauma, or the gap between how people present themselves and who they actually are.
It only knew what they’d told it.
In six days, it would tell them something back.
Whether they were ready to hear it was another question entirely.