Wishdeal Factory · Storefront
A typical day · Owner-operator's seat
← Back to Upsell AI

Day 1 operating Upsell AI.

First-person, second-month operator. What you'd actually be doing on a Tuesday. Real customers, real numbers, real friction. Synthesized from the agent spec and the GTM model.

8:42 AM - Inbox triage

I open the Upsell AI admin dashboard at 8:42 on a Tuesday. The Slack notification that woke me up is still fresh: two new free trial signups overnight from the app store listing, both with mid-size stores. I pull up the Stripe dashboard in another tab to check yesterday's actual revenue. Four new $79/month subscriptions converted from trial, two on the $49 tier. That's $336 in new MRR. It's only six weeks in, but I'm tracking toward the $12,000/month I'd need to hit my year 1 target. The math still works if conversion stays here.

The admin UI shows me 47 active trials right now, up from 41 last week. My agent - the system that watches customer behavior and drafts upsell email sequences - has been running overnight. I see three tasks flagged for my review in the inbox. The first is a draft email it prepared for Marcus Webb, who runs a shoe store with about $280k in annual revenue. The agent detected that Marcus has been using Upsell AI for 11 days without configuring any custom recommendation rules. The draft it wrote is good - it explains the ROI with specific numbers, offers a 15-minute call. But it's missing context about what Marcus actually sells. I add a sentence about his product category and approval it for sending.

Two more pending drafts. One is a renewal reminder for Carol Reyes at Reyes Family Practice, a small dental office with a supplement shop on the side. She's 8 days from auto-renewal on her $49 plan. The draft looks solid. I approve it.

The third one is flagged orange. A customer named James Horne has a trial account but Upsell AI detected something wrong with his Stripe integration. The payment method in his test store isn't connected properly, which means the upsell recommendations won't actually ring through to completed transactions. The agent flagged this for me because it's not just a usage problem - it's a blocker. I make a note to reach out manually this morning.

9:55 AM - Manual work on a blockers

I open Gmail and draft an email to James. This is the kind of work the agent can't quite do - the voice needs to be direct but not alarmist, and James might be confused about what happened. I explain the Stripe integration issue in a single sentence, then link him to the help doc. I mention I'm available if he wants to jump on a quick call to troubleshoot. Send.

Back to the dashboard. I scroll through the week-to-date metrics. 18 new trials this week, 6 conversions so far (9 more days to see if more close). Revenue for the week is sitting at $1,847. That's solid for a Tuesday.

I move to Linear, where I've been tracking bugs and feature requests. There's one issue that came in yesterday: a customer on the $99 plan reported that the email preview feature is showing HTML tags instead of rendering clean text. I add it to today's sprint. It's a small fix but it matters - the preview is what convinces merchants to actually send the upsell email sequences. If it looks broken, they lose confidence.

11:18 AM - The bug fix and a support request

I pull up the code for the email preview renderer. The bug is what I thought: a missing line in the template handler that strips HTML before the preview renders. I fix it in about six minutes, run the test suite, push to staging. I'll deploy to production after lunch once I've manually tested it with a real account.

My Slack alert goes off. A customer named Priya Desai just sent a message through the in-app support widget. I click through. Her message says, "I have 150 customers and I want to send the same upsell campaign to all of them today. Can I do that or do I have to build them one by one."

The answer is no - not yet. Upsell AI currently builds campaigns per customer segment, not bulk campaigns to your whole list. It's a feature I've heard requested before. I respond to Priya explaining what's possible right now: she can use the template engine to build one campaign and then apply it to any segment. I offer a 15-minute call to walk her through it. I flag this request in Linear as a feature request, mark it high priority. If three more customers ask, I'm building it.

12:34 PM - The churn and the lunch-time check

While I'm eating a sandwich at my desk, a notification pops. One of my older trial customers, from the first week, has downgraded from $79/month back to the free tier. The name is Tom Chen. I click through to his account to see what happened. He's barely used the app - it looks like he set it up, tried one campaign, and decided it wasn't worth the monthly cost.

It stings a little. But I'm not surprised. Not every merchant is ready for this. Some want to see ROI before they commit to anything, and Tom's store is small enough that he might be right to be cautious. I make a note in his account: "Churn reason - likely too early stage of business for ROI threshold. Follow up in 60 days." I move on.

I pull up the Stripe dashboard again, this time with a longer view. Today's signups and conversions, sure, but I also want to see the shape of the cohorts. The customers I converted in the first two weeks are staying. Nobody's churned from the initial cohort except Tom. That's good. Retention shapes everything at this stage.

Week-to-date pipeline: $1,847 in new subscriptions, plus $3,200 in existing renewal revenue. That's $5,047 of a $12,000 weekly run rate I need to hit. I'm at 42 percent. I need the back half of the week to hold.

2:08 PM - An escalation

I'm back at the desk when a email comes in from a customer named Rachel Kim. She's three weeks into a $99 subscription and she's discovered a conflict between how the app counts "abandoned carts" and how Shopify's native analytics counts them. Her question is technical and specific: she set up an upsell campaign to target carts abandoned for more than 2 hours, but when she cross-referenced the count against her Shopify admin, the numbers didn't match. She's wondering if she's being overcharged.

This is the kind of issue that needs honesty and detail. The agent can't handle this - it's too nuanced. I pull up her account in the admin UI, look at her cart tracking settings. The discrepancy is real. I can see what happened: Shopify includes carts without customer email addresses in their "abandoned" count, but Upsell AI filters those out because we can't send an email to a ghost cart. So the numbers are correct, just measuring slightly different universes.

I draft a response that explains the difference clearly, with a screenshot showing the exact numbers in both systems. I tell her the difference is usually 3 to 8 percent and it's not an error. I also offer a small credit on her account next month just to clear the air. This kind of work - the friction that needs grease - is a huge part of what I do. The agent can draft, but I have to close.

3:47 PM - The good moment

A response comes in from Marcus Webb, the shoe store owner I sent the agent-drafted email to this morning. He says he wants to set up a call tomorrow to talk about the custom recommendation rules. He also says, "Your product has already paid for itself in the trial - I've tracked 12 extra shoe sales that I can attribute to the upsell recommendations. Looking forward to seeing what we can do with this dialed in."

I feel it. This is why I'm doing this. Marcus isn't just staying; he's going to upgrade. I make a note to prepare a 15-minute call about advanced rules configuration. I also flag him in my mental model as a potential case study down the line - a customer who actually measured the ROI clearly.

I deploy the email preview bug fix to production and test it quickly with Rachel's account. It renders clean now. Good.

4:52 PM - Pipeline and close-out

I check the trial pipeline one more time. Of the 47 active trials, 16 are past day 7 (the point where most of the learning happens). Of those 16, I can see 8 that are genuinely engaged: setting rules, sending campaigns, checking analytics. The other 8 are basically inactive. I know maybe 3 of the 8 will convert on the last day when they get the final "your trial is ending" email, but the other 5 are going to expire.

That's fine. This is what the funnel looks like. You need volume to get conversions. 47 trials to maybe 8 conversions this cycle. That's a 17 percent trial-to-paid conversion rate. For a $49+ product with a free trial, that's north of what I expected.

I close the Linear board. One bug fixed, three customer touches, one feature request flagged for later. I write a quick Slack update to myself - a note for tomorrow morning about which trials to monitor closely and which cohorts are worth analyzing.

5:58 PM - Wrap

I close the browser tabs. Stripe first, then Gmail, then the admin UI.

This day was maybe 70 percent email and support, 20 percent metrics and planning, 10 percent actual building. Tomorrow might be different - maybe a feature request lands that eats my afternoon, or a customer discovers a new edge case that needs investigation. But this is the work. The agent drafts, I refine and send. The agent flags issues, I prioritize and resolve. The agent watches the data, I decide what it means.

When I started, I thought I'd be sitting back watching this thing run. What's actually happening is I'm running a small operation where the AI is my most trusted team member. It does the work I can't scale myself, and I do the work that still needs a human.

The $12,000 a month target feels possible now. Not sure, but possible. I'm already learning what moves the needle: engaged trials convert way better than passive ones, and the customers who actually measure ROI stay longer. If I can get better at finding the first kind of trial and helping them move faster through the learning phase, the numbers compound.

I'll be back here tomorrow morning. For now, the laptop closes.

This could be your Tuesday.

Upsell AI is available to own for $200 flat. Or pay $75/hr for a Roll Digital chief operator to build it for you, AI-amplified.

See pricing →