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

Day 1 operating Immigration Law 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 my laptop on the kitchen table and pull up Gmail. Fifty-three new emails since yesterday evening, which is about right for a Tuesday. My Slack channel pings with three notifications already - the product logging 9 new signups overnight from the LinkedIn campaign, two customer support messages, and a bug report from Carol Reyes that one of her case audits didn't format correctly. I make a mental note about Carol and keep scrolling.

The first email in my inbox is from the AI system itself: "Daily Summary - 9 new case audits ready for review." I click through to the admin dashboard. There are four case audits sitting in the "Pending Review" queue, plus five more that completed overnight and are waiting for my approval before they get sent back to customers. This is the actual bottleneck of the business right now. I'm not paying for a human paralegal to review these. I am the review.

9:15 AM - Case audit review

I open the first audit in the queue. It's from a solo practitioner named James Chen who submitted a case file for a marriage-based green card application. The AI has flagged three issues: a missing I-130 form, an incorrect filing date on the I-485, and a note that the police certificate is dated more than 90 days prior to filing, which might trigger an RFE. I scan the draft response email the system generated and make one small edit - changing "might trigger" to "will likely trigger" to be more direct. I approve it and move to the next.

The second one feels different. It's from Reyes Family Practice in Tucson, one of our firm tier customers at $500 a month. They submitted a complex family separation case with four beneficiaries. The AI identified a derivative beneficiary issue that could affect one of the children's priority date. I read the explanation three times. It's right, but it's nuanced. I open a quick Slack message to myself: "Flag for Carol - derivative issue in Reyes case, call her before sending audit." I don't approve this one yet. That's a conversation.

The third and fourth audits are straightforward. One missing document, one timing issue. Both get approved within two minutes each.

10:45 AM - A customer thank you and a flag

A Slack notification appears from my customer Slack group. It's from Marcus Thompson, owner of Thompson Immigration Solutions in Atlanta. He's one of the five firms we signed in month one. His message says: "Just want to say that your last batch of audits saved us from a procedural disaster. Client D would have filed without the I-131 and we would have been explaining that to their family for months. Thank you for the rigor."

I take sixty seconds to reply and send him the same message via email because I know that matters to him more than Slack. I forward the email to myself with a subject line "KEEP" because these moments are rare and I want to remind myself in three months why I'm doing this work when it feels like I'm just managing queues.

Then the Slack notification about Carol's bug. I pull up the Stripe dashboard quickly - Reyes Family Practice is current on payments and on a monthly plan. I don't want them to churn because of a technical issue. I click through to the product dashboard, find the case file Carol reported, and I can see what happened: the formatting template for spousal cases isn't pulling the beneficiary name correctly. It's showing null. I log into Linear and create a ticket: "Case audit template bug - spousal cases, beneficiary name not rendering. Reyes Family Practice affected. Priority: high." I tag myself to fix it after lunch.

12:15 PM - Metrics check and lunch

I open the Stripe dashboard and the analytics tab on the admin panel side by side while I eat a sandwich.

Today's numbers: 9 new signups so far this week. Four have taken the free case audit demo. That's a 44 percent conversion on the free offer to starting a demo, which is tracking ahead of where we were in month one. Revenue today is zero - no new subscriptions closed yet this week, but I have seven prospects in the pipeline. Two of them are due to close by Friday.

Week-to-date revenue is $4,200 from existing customers. We have eighteen customers now: five firm tier at $500 per month and thirteen solo tier at $250 per month. That's $5,500 MRR, which puts year one ARR on track to hit somewhere in the low two-hundred thousands if churn stays at zero. Churn is currently at zero. I'm acutely aware this won't last.

The metrics dashboard shows that the busiest day this month was last Thursday with 23 case audits submitted. Today we're at 11 so far, which is normal for a Tuesday.

1:45 PM - Fix the bug

I actually sit down with the codebase. The bug is in /app/templates/audit-response-spousal.js. The beneficiary name is pulling from a config object that doesn't have the right key. I change one line - from config.beneficiary.name to config.spouse.beneficiary.name - and test it with Carol's exact case file. It renders correctly now. I merge it to the main branch, and the deployment is live within seven minutes. I send Carol a Slack message: "Hey - the bug you reported is fixed. Your new audits should format correctly now. Can you test one?" She replies within two minutes: "Already did. Looks good. Thanks for the quick turnaround."

2:30 PM - The escalation

An email arrives from a prospect named Linda Alvarez, partner at a four-person immigration firm in Phoenix. She's one of the most serious prospects I have. She took the demo, was excited about it, and asked detailed questions about integrations. Specifically, she wants to know if the system can automatically flag conflicts when they pull from their case management system.

This is a real question that requires a real answer. The AI can't do this. Not yet. This is a feature gap that I've known about for two weeks. I could say "yes, coming soon" but I've watched too many SaaS founders kill their credibility this way. Instead, I write her an honest email:

"Hi Linda,

Thanks for asking about the conflict-checking integration. Here's the straight answer: we can't do this automatically right now. We can do manual conflict checking by uploading a case file, which catches most issues. A few firms have asked for direct CMS integration, so it's on the roadmap, but I want to be clear that it's a quarter or two out, not weeks.

I'd rather lose your business by being honest about what we can do today than gain it by overselling. If the current version of case audit and conflict checking is useful at $500 per month, great. If you need the automation, I get why you'd wait.

Let me know either way.

Best"

I send it and move on. Some deals are made for longer than they're worth. But Linda replies within an hour: "I respect the transparency. Let's start with the $500 firm tier and we can revisit when integrations are ready. Can you send the onboarding link?"

3:45 PM - Onboarding Linda

I open the admin dashboard, add a new firm account under her company name, and generate an onboarding sequence. This triggers an automated email to Linda with setup instructions, a video walkthrough, and a calendar link for a brief onboarding call. I also add a note in Linear: "Linda Alvarez at Alvarez & Associates - CMS integration conversation in Q3." That deal is not lost. It's just deferred and tracked.

I manually enter her payment info into Stripe because our payment processing still isn't fully automated for firm-tier signups. It takes three minutes. Five hundred dollars hits the account.

4:50 PM - Pipeline review and a churn alert

The Slack integration with my CRM pings: a notification that one of our solo tier customers, someone named Robert Goldstein, just let his subscription lapse. No payment decline - he just didn't renew. Thirty seconds of my day and now I'm thinking about why. I pull his analytics: he took one case audit in his first week, then nothing. He used the system twice and then stopped. I could be proactive and reach out, but I'd rather know why first. I send him a short email: "Hi Robert, noticed you let your subscription lapse. Was the case audit tool helpful? Any reason you're not using it anymore? Would love to keep you if there's something we can improve."

He'll probably not respond, but sometimes these emails tell you something real about product-market fit.

I still have five prospects in the pipeline. Two are firm tier conversations, potentially $1,000 per month each. Three are solo tier, potential $250 per month each. The firm conversations are further along. Both have taken demos and asked implementation questions. The solo tier prospects are still in the early interest phase. I mentally prioritize the next two days: follow up with the two firm tier prospects by Thursday.

6:15 PM - Wrap and reflect

I close the laptop at 6:17 PM. The day doesn't feel like the frictionless operation that the landing page tries to promise. Four case audits reviewed and approved. One bug fixed in code. Three customer emails written, two of them substantive problem-solving instead of template responses. One new customer onboarded. One customer churned. Four hours of my time spent on operations, maybe one hour on actual product work.

The good part: Marcus's thank you email. Linda closing on the phone call. Carol's issue resolved quickly enough that it felt good.

The hard part: Robert churning for reasons I don't understand yet. The realization that the conflict-checking integration is now a competitive feature that I promised to two different prospects, and I'll need to build it by Q3 or risk losing them both.

What worked today: being honest with Linda instead of overselling. Approving three of four audits quickly and moving on instead of letting perfectionism stack up work. Fixing the bug myself instead of adding it to a backlog.

What I'd change: I need to set up better feedback loops for lapsed customers. And I need to stop reviewing cases at 2am when I get notifications. This can wait until morning.

The math still works. Eighteen customers, five thousand five hundred MRR, low churn, and a pipeline that's actually moving. I'm two months in and still operating at a pace I can sustain.

I close the laptop and order dinner.

This could be your Tuesday.

Immigration Law 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 →