8:42 AM - Inbox triage
I open the dashboard with my coffee still hot. Tuesday morning, second month of operating Vellum. The habit is already formed: coffee, then the numbers.
Last week brought 247 signups. Today I'm at 18 new free accounts already, which is on pace for 35-40 by end of day. Weekly churn sits at about 8 percent of the free tier, which is fine, people try, people leave. The paid cohort is stickier: 3.2 percent churn last week, down from 4.1 the week before. Something is working.
Revenue this week: $2,847. For context, Year 1 ARR is looking like it could land around $85,000 if this pace holds. Two months in and I'm already thinking in annual numbers, which is still surreal.
My phone buzzes. Slack notification. The AI agent flagged three draft customer emails overnight for my review. I open Gmail. The first is from Carol Reyes at Reyes Family Practice. She upgraded to paid last week after 17 days on the free plan. Her question: can Vellum auto-calculate late fees on invoices for patients who miss payment windows.
The agent draft is solid. It walks her through the workaround: static invoice template with fees baked in, or a manual addendum. But the draft misses the bigger ask. She's a doctor, she wants this automated. I rewrite the email. Not to be difficult, but because Carol is an early adopter in a vertical I'm targeting hard right now, and her feedback might be a feature request. I add: "Also interested to know if you'd use a late-fee automation toggle if we built it. That's on our roadmap for Q3." I hit send.
The other two drafts are routine: a "how do I white-label my invoices" question (answer: not yet, but it's planned), and a refund request from someone who signed up free, never logged back in, and got charged for a month. The second issue is a churn risk. I approve the agent's refund response, then jump into Stripe to process the refund manually. Nineteen dollars. Takes two minutes. Better to lose nineteen dollars than lose someone to a billing nightmare.
10:15 AM - A flagged conflict
The agent has also flagged something: a customer named Marcus Jennings, a freelance copy editor, hit our API limit at 2:47 AM. He sent an angry email at 6 AM asking why his invoices stopped generating.
The agent had drafted a response offering an immediate one-month paid upgrade at 50 percent off. Generous, maybe too generous. But the agent also noted Marcus has been on the free plan for 46 days, so he's a lurker-turned-power-user. Exactly the kind of customer we want to convert.
I check Slack. The agent had also posted a summary to the #escalations channel: "Marcus Jennings hit free tier limit. High-intent signal. Recommending discounted upgrade. Approve or override?"
I approve it. I also send Marcus a personal note: "Your usage tells me Vellum is solving your problem. Here's 50 percent off your first month of paid access. If you have other edge cases, let me know. We're still new and I read every piece of feedback."
I'll probably hear back from him by Thursday.
12:15 PM - The metrics check and a small fix
Lunch is a desk thing today. I pull the weekly dashboard: signups by source.
Organic search is our strongest channel so far. SEO is slow but compounding. Last week's landing-page optimization, moving "invoice generator for freelancers" above the fold and adding schema markup, has pushed our click-through rate from 3.1 to 4.8 percent. Small changes, but they compound.
Reddit is our second channel. I spend ten minutes scanning r/freelance and r/accounting, looking for threads where someone mentions invoice problems. I find one from a CPA asking about bulk invoice generation. I leave a response mentioning Vellum's batch-import feature. I don't sell in the post, just answer the question and link to docs. This is the motion that drives our lowest-CAC growth.
While I'm in the product, I notice something: last night an engineer flagged a bug in the invoice PDF generation. Dollar amounts with three decimal places like 1,234.567 are being truncated to two decimals without rounding, so 1,234.567 becomes 1,234.56 instead of 1,234.57. It's rare, but someone will hit it and churn.
I have him deploy a fix. Takes 20 minutes including a quick test. I send him a Slack message: "Merged and live. Good catch." Then I send a proactive email to any customer who used the API in the past week with decimal-place invoices, just in case. Four customers get the note.
2:08 PM - The hard conversation
By 2 PM, I'm in the thick of it. Slack notification from a customer named Jenna Wei, a graphic designer and paid subscriber since week one. Her message is short: "Switching to Wave. The interface is just not clicking for me."
This one stings because Jenna was one of my first 20 paying customers. She's churn. I could let the agent handle a retention email, but I don't. I call her. Takes me 12 minutes to get her. The real issue: she wanted dark mode, I don't have it, and Wave does. That's honest feedback. I don't grovel. I tell her I'm keeping her note, dark mode is in backlog, and if she comes back in three months, first month is free. She doesn't commit, but she seems less frustrated. I lose $17.99 from MRR.
I log the churn reason in Linear, our bug tracker, which also serves as a feedback log. Two other customers have mentioned dark mode. It's becoming a theme. Not this month, but soon.
4:30 PM - Pipeline
Back to the dashboard. I pull the pipeline view, which tracks feature requests by volume and customer segment.
Top requests this week: dark mode (three mentions, two paid customers, one churned customer), white-label invoicing (five mentions, all from paid tier), late-fee automation (Carol Reyes, plus one other doctor), bulk-edit invoices (four mentions, all freelancers).
I'm realizing that my paid customers and my free customers want different things. The free tier is asking for basics and UX polish. The paid tier is asking for power-user features: automation, white-labeling, bulk operations. This is telling me my pricing is right, but my product packaging might need tweaking.
I jot a note in the product spec: "Consider paid tier SKU differentiation. Offer Pro at $25, keep base paid at $15." That's a conversation for next week, but I'm thinking about it now because the data is telling me something.
5:45 PM - Revenue snapshot and close
By 5:45 PM, I'm checking the day's final numbers.
Today's signups: 37. Week to date: 186. Running strong.
Today's revenue: $67 from three new paid conversions, two from Reddit organic, one from a Google Ad I ran last week. Week-to-date revenue: $428.
MRR is now sitting at $6,450. That's $77,400 annualized. We're tracking toward $85K, maybe breaking it if the dark mode and white-label features move the needle on conversion rate.
I close the laptop. The small stuff today was real: an angry customer at 2:47 AM, a bug with decimal rounding, a call with Jenna to try to keep her. The good stuff was also real: Carol asking about features, Marcus converting, Reddit creating low-CAC awareness.
The work is not automated. The AI handles drafting and flagging, but I'm the one making calls. I'm the one reading between the lines in an email and seeing a feature request. I'm the one calling Jenna because churn deserves a real conversation.
Tomorrow I have to decide whether to build dark mode or white-label. Both matter. Both move the needle. That's the actual job: not running a machine, but running a business with a machine as my co-pilot.