Dev.to AI 🤖 Ai 👁 0 📖 14 min read

AI Executive Assistant ROI: I Spend €5.6k, Save €173k

This is the ops side of running a small business on 123 scheduled jobs. One job reported success for 48 days while its access key was being rejected. A cron schedule was off by one day. And one day about 70% of the board

AI Executive Assistant ROI: I Spend €5.6k, Save €173k

This is the ops side of running a small business on 123 scheduled jobs. One job reported success for 48 days while its access key was being rejected. A cron schedule was off by one day. And one day about 70% of the board went red because a laptop wasn't plugged in. The money is in the tables on top, the failures are in the middle, and the checklists I now hold every job to are near the end.

I still have my personal human EA, Lucie, and it is the best decision I could do. My AI executive assistant saves an estimated 361 hours of work a month, about €173k a year in people cost, and costs €5.6k a year to run. I kept her because she keeps me accountable.

The assistant is 123 scheduled automations, a set of AI skills and one dashboard I call the Control Room. Depending on who sells it, the same thing gets called an AI-powered executive assistant or an AI chief of staff. I use it as a second brain for five business streams: the Engineering Leaders Community, the ELC Conference, the Academy, hiring through Marian's List, and my mentoring at marian.coach.

Before you copy any of this, you should know I'm a person with the tech background. I've spent 20+ years in software development, and before I went solo I was VP of Engineering at Mews, where engineering grew from 8 to 80 teams. That's why I could build it myself.

The plumbing needed an engineer. Writing down my niche, my ideal customer and my KPIs didn't, and that's the part that made the AI useful.

If you only copy three things

  1. For one business line, write the niche, the ideal customer and two KPIs, each KPI with a source.
  2. List every recurring job with an owner.
  3. Get an alert when a job goes silent.

My AI ROI: €464 a month buys the work of 2.3 people

This is the ledger as of 14 November 2026.

Savings panel of the Control Room home page: hours of work saved a month, the number of extra people that equals, people cost avoided, the cost of running the automations and the amount saved after costs, in Czech crowns

The "What the automations save" panel on the Control Room home page, captured on 15 November 2026. Amounts are in Czech crowns.

Per month Per year Per month (CZK) Per year (CZK)
Work saved 361 hours about 4,330 hours
Equal to, at 160 hours a person a month 2.3 extra people 2.3 extra people
People cost avoided €14,428 €173,141 352,415 4,228,980
Cost of running the automations €464 €5,569 11,335 136,020
Saved after costs €13,964 €167,573 341,080 4,092,960

It's an estimate. The hours are what a person would really spend to produce the same output. Three jobs use measured volume from my outreach ledger and the rest use estimated hours.

The ledger counts hours avoided, not revenue. Euros are converted at the Czech National Bank fixing of 13 November 2026, 24.425 CZK per EUR.

The table implies a blended rate. €14,428 for 361 hours is about €40 an hour, across the three people whose work the jobs cover. I don't publish the individual rates.

The conservative number

176 of the 361 hours are work I would otherwise have hired for, a sales development rep (SDR) or a virtual assistant. That's about 1.1 people. The rest is time back for the team, and most of it is mine.

Automation is one part of the time it saves me. The other is visibility. I no longer look for information or try to fix things manually.

What the bill covers

Bill A month What it means
The automation bill €464 The tools the automations run on. This is the €5.6k a year in the title.
With the tools I'd pay for anyway about €811 Adds chat, CRM, notes and the office suite. I'd keep those without the automations.
Every subscription I pay about €1,204 Every subscription on my list.

The two bigger totals carry estimated lines, and none of the three includes my build time. It took me one weekend to create this dashboard and another 3 weeks to a month to go through the full monthly cycle of the company to improve the logic of this AI executive assistant.

This ledger is the back office behind the mentoring business I wrote about before and the four other streams.

What the AI answers say it costs

The AI answers you get today quote a smaller bill. Perplexity, asked on 15 November 2026, put an assistant stack at $20 to $200 a month and its upkeep at 2 to 8 hours a month. ChatGPT leaned on vendor price pages such as Lindy's. It also cited a Forrester study commissioned by Microsoft for Copilot Studio, where one customer says an agent saved 4 hours per user a month.

Those numbers are fair for one tool on one desk. My bill is for a whole back office, and my upkeep includes the day the dashboard went red. Not one of the answers I collected that day cited an owner's own numbers.

Will AI replace executive assistants? I kept Lucie

My human EA is accountable, high agency. She resolves everything on the spot. She is reliable. Top value: She keeps me accountable.

She held me accountable when I had no time. She was very persistent about making sure that I invest my time into the right decisions.

She is also urging me to pay attention to non-business things, which go into relationships with my teammates.

In invoicing, the AI reads the bank lines and matches each one to a document. Lucie finds the documents the AI can't: Drive first, then Gmail, then the supplier portals. From July to October 2026, 79 of 248 bank lines were waiting for a document.

I automated 123 jobs and kept the person who resolves everything on the spot.

When you ask whether to replace an executive assistant with AI, ChatGPT, Perplexity and Gemini all answer "hybrid". I agree with hybrid. I pay for it every month.

Those answers stop before the split. In my business the AI does the recurring work, and Lucie does the part where somebody has to go and find the thing and decide on the spot.

The day my AI agent dashboard went red

On 25 October 2026 I made an inventory of my automations. One job had reported success for 48 days while its access key was being rejected. Another sent LinkedIn messages on a Sunday, because its schedule was off by one day.

A group of other jobs succeeded about 60% of the time and never alerted me. I wanted to have information in one place as opposed to hoping everything works. That weekend I built the dashboard.

Then, in late October 2026, came the day when I saw my automations failing. The dashboard was very much in red, about 70% of the jobs. I was worried that my business would go down, or that I would eventually miss an important business opportunity.

Therefore I dropped the meetings that were not critical and I started fixing things. I found out that the root cause was just one single thing. It was fixed by AI very soon, and then all the jobs were rerun pretty fast.

The reason was that most of the jobs ran from my local PC, which was not plugged in. So nothing ran.

Today most of the jobs are on the cloud already. For the local ones, my decision was first of all to fix it, and second of all to refurbish my 7-year-old MacBook Pro and use it for the automation of my local jobs.

The local jobs have run from that Mac since. The board is still not all green. On 15 November 2026 the coverage page showed 140 jobs OK, 4 failing and 30 stale.

Coverage page of the Control Room: a live strip reading 140 OK, 4 failing and 30 stale, filters by stream, runtime and status, and a job table with columns for owner, runtime, test, dry run, last run and a red broken flag

The coverage page of the Control Room, captured on 15 November 2026: 140 jobs OK, 4 failing, 30 stale. Each page counts a different set of jobs and the set changes daily. The 123 in this post is the count in the savings model of 14 November 2026.

The same evening the home page read "4 of 5 goals on track". The one goal behind was qualified mentoring leads.

Control Room home page with the headline 4 of 5 goals on track, four tiles reading 4 of 5 goals on track, 1 goal behind, 9 things wait for a person and 136 of 167 automations working, and stream cards for Community and Conference with goal bars

The Control Room home page, captured on 15 November 2026. One goal is behind: qualified mentoring leads.

On the red day I was the one who noticed.

The AI now fixes its own jobs. Senders and finance it may not touch

Now a watchdog does the noticing. It runs every hour in the cloud, off the Mac, and it expects a heartbeat, a sign of life, from each job. A job that stays silent past its schedule counts as failed, so an unplugged computer can't hide.

Fix queue with four items in two columns: Needs Marian with two outreach jobs marked never auto-fixed, and I can fix, approve? with two jobs that each carry Fix now, Approve fix and Won't fix buttons, above a paragraph that explains the triage rules

The fix queue of the Control Room, captured on 15 November 2026.

Each break lands in one of three classes. The AI fixes it on its own, the AI fixes it after I approve, or it waits for me. The AI may not fix outreach senders, finance and logins on its own, because a wrong fix on a sender goes out to real people.

There's a limit so it can't fix itself in circles, at most 5 fixes a day and 1 per job per 7 days. A test on 15 November went from approved to fixed in 2 minutes.

My AI second brain runs on a written niche, ICP and KPIs

The automations ran before the AI knew what business it was working for. The fix was setting my niche, ICP, KPIs so that the AI knows the context.

Mentoring stream page: 1 of 2 goals on track, a niche card and a mission card, an ideal customers table with three segments and what each buys, and a scorecard with KPI completion 89%, website health 92 of 100, campaigns and automations 73% and client engagement 89%

The Mentoring stream page, captured on 15 November 2026: niche, mission, ideal customers and the scorecard.

This part has no engineer in it. It's writing.

Every stream must have a niche and a mission, one sentence each, max 160 characters, and concrete: who, what, which geography. My mentoring niche starts with "One-to-one leadership mentoring for engineering and product leaders in Czechia and Central Europe".

The ICP, the ideal customer, has 1 to 4 segments, with consumers and companies kept separate. Each segment says who they are, what they buy and where that comes from. One thing the company segment of my mentoring stream buys is a Mentor in Residence.

Then the KPIs, yearly and monthly, revenue first, each with a target and the source of that target. A target without a source is shown as unsourced.

The system refuses to publish a stream that is missing any of these. In return I get a scorecard per stream with four lines: KPI completion, website health, campaigns and automations, client engagement.

Two meetings run on it

Tereza is our Head of Community, and we have two recurring meetings.

Community stream page: 2 of 2 goals on track, a niche card and a mission card, an ideal customers table with a B2C and a B2B segment, and a scorecard with KPI completion 97%, website health 90 of 100, campaigns and automations 79% and client engagement 100%

The Community stream page, captured on 15 November 2026.

Weekly: preparation for the next week, if everything works, and checking the Control Room on the web.

Monthly: review past KPIs me and Tereza have, and set KPIs for the next month, aligned with our strategy.

It helps me focus on the right things, which is strategy and KPIs.

The bank is the truth: what four months of AI bookkeeping found

My invoicing process has one rule: "The bank is the truth, Fakturoid follows it." Fakturoid is my invoicing tool, and when it disagrees with the bank statement, the bank wins.

Invoicing overview headed 6 invoices still unpaid, with four numbers: 248 bank lines read, 163 matched to a document or explained, 79 wait for a document, 6 need a second look, and four steps from invoice to paid: issue, collect, pair, chase

Invoicing overview. This is a mock-up, built on 15 November 2026 from the real run files. The live page is next on my list.

From July to October 2026 the AI read 248 bank lines across two companies. It matched 163 to a document or explained them, 79 were waiting for a document, and 6 needed a second look.

One supplier invoice had been paid twice, by two of my own companies, eight weeks apart. That explained a gap between the accountant's books and the bank. A declined charge was collected a month later, so the invoice and the bank disagreed.

For one company the AI checked 17 bank statements and pulled 31 missing PDFs from the mailbox. All 62 outgoing payments of that company now have a document and a checked amount.

Invoicing detail: stacked bars of bank lines by month from July to October split into matched, document missing and needs a look, a list of six unpaid invoices from 35 to 154 days late with names and amounts hidden, and three findings: one invoice paid twice, a declined card payment, and 31 documents found in the mailbox

Bank lines by month, unpaid invoices and findings. Also a mock-up built on 15 November 2026 from the real run files, with customer names and amounts hidden.

On 18 October 2026 there were 6 unpaid invoices: 2 overdue by 35 and 88 days, and 4 issued before July, the oldest 154 days late. One reminder went out, and I approved it first.

Two roles the AI took: one I never hired, one I fired

An AI SDR needs caps and a ledger

No cold outreach person needed if you have the right outreach AI skills and processes. For me the processes are caps on what goes out and a ledger of what was already sent.

Campaigns table with 23 campaigns: one row per campaign with its stream, messages sent, replies, positive replies, calls booked, reply rate, bounce rate, a status of judged or running too early, and the time of the last event

The campaigns table in the Control Room, captured on 15 November 2026. Recipients are masked.

I have two small samples so far. Between 13 and 27 October 2026, 44 first touches led to 8 conversations, 18%. On 12 November, 11 offer-led first emails got 2 positive replies by the next day.

Will AI replace graphic designers? In my business it did

The designer is not needed these days anymore if you have a unique design set properly. Yes. I fired the designer.

The designer had a rate of 1,000 CZK an hour, about €41, which is more expensive than AI. I created a set of design skills for my web and for picture and video generation.

I created a queue which I use for the design requirements. The AI automatically takes the tasks from the queue, implements them, and I see the result instantly. Eventually I fix the skill for future improvements. It's the very same approach as talking with a personal designer.

The proof on this page is the hand-drawn diagram in the next section and the two invoicing pictures above. Those skills made them, with no designer.

That's one business and one role. I'm not telling you designers are finished.

The blueprint for AI operations: what a stream, a job and a step each need

If I had to hand this over to another owner, I'd hand over three checklists. They're the target I'm working towards, and my own system doesn't pass all of them yet.

Hand-drawn diagram of three levels: two violet boxes headed Every stream with the note Niche, ICP, KPIs, an arrow to four amber boxes headed Every job with the note Owner, test, alert, and an arrow down to six blue circles headed Every step with the note Dry run

The three checklists. A stream owns jobs and a job is made of steps, and each level has its own rules.

Every stream

The niche, the mission, the ideal customer and the KPIs from the section above, plus the scorecard.

Every job has an owner before its first run

The full standard for a job has 19 rows, and these four are the ones I'd insist on as an owner. The first is that a job is registered before its first run, with an owner and a 5-line runbook.

Table of 19 numbered requirements, from business stream and purpose set to sender canary, with a count of jobs that pass, have a gap, are not applicable or pending for each; the row for working test, dry run and failure-path test shows 3 pass and 147 gap

The operating-standard page with all 19 rows, captured on 15 November 2026.

Today 3 jobs pass the test row and nearly all the others have a gap.

Every job alerts when it goes silent

A silent job counts as failed and raises one alert per incident. Nothing pages me between 22:00 and 07:00 unless it's critical.

Every job has a budget

Each job has a budget, and I get an alert at 80% of it.

Every job has a retire rule

A job with no outcome for 8 weeks gets retired.

Every step

A step can be rehearsed without sending anything, and that's the default. It runs alone. Its failure path is tested, not assumed, and the rule for going live is "No test, no switch".

The AI tools for small business I pay for, and the jobs to copy first

Claude is the biggest line on the bill and the AI behind the skills. This is the €464 line by line.

Flow diagram of the partner-outreach job: a schedule box followed by 28 numbered steps in rows, such as guard, fetch, compute, send and write, with colour marks for code, external system, steps that touch people and shared steps, ending in an outputs box

The flow of the partner-outreach job, captured on 15 November 2026: 28 steps, 6 of them touch people.

Tool What it does for me A month
Claude Max The AI behind the skills and the fixes €180
DataForSEO Search data for the SEO jobs €54
Unipile Sends the LinkedIn messages and invites €49
Ecomail The community newsletter €41
Resend Email sent from my website €36
Firecrawl Scrapes web pages for the jobs €21
Activepieces The clock and the pager for automations €18
Cloudflare Where the websites and the cloud jobs run €16
ElevenLabs Speech to text for voice notes €10
API-billed AI jobs AI calls billed per use about €39
Total €464

Prices are converted at 24.425 CZK per EUR and 22.101 CZK per USD, and rounded. The last row is the remainder.

Outside the €464 are the tools I'd pay for anyway: Slack, Notion, Attio, PostHog, Google Workspace, 1Password, Fakturoid, Granola and Medium. The rest of the stack is the Gemini API for images, Astro for the websites, Google Sheets, GitHub Actions and Luma for events.

Best value for cost

Monthly figures. "Saved" is after the job's own run cost.

Job What it does Saved Run cost Saved per €1 of run cost
Distribution Picks up new blog posts hourly and plans their distribution €383 €0.94 €407
Web daily brief Posts yesterday's visitor brief for both websites to Slack €383 €1.19 €322
New-joiner welcome Welcomes each new community member by email within 10 minutes, then a drip €255 €0.94 €271
Call follow-up Writes a Gmail follow-up draft within 60 minutes of an external call €633 €3.93 €161
Partner outreach Sends partner outreach hourly on weekdays, sources new contacts on Monday €763 €5.12 €149
Daily campaign tasks Posts the day's campaign tasks to Slack €380 €4.14 €92

Most money saved

Job What it does Saved a month Run cost a month, rounded
Speaking pitches Researches speaking leads, fills call-for-papers forms, queues pitches and follow-ups €1,442 €94
LinkedIn engine Publishes approved posts on their date, scores engagers, sends paced invites, replies to comments €1,124 €28
Partner outreach Sends partner outreach hourly on weekdays, sources new contacts on Monday €763 €5
Mentoring content suggestions Turns call notes into shareable stories, drafts and action items €760 €7
Call follow-up Writes a Gmail follow-up draft within 60 minutes of an external call €633 €4
Daily broadcast Drafts LinkedIn posts from yesterday's work, with pick, sharpen or kill buttons in Slack €600 €14
Distribution copy Drafts distribution copy for planned posts €570 €6
Marketing board Drafts the marketing board and posts the daily digest €569 €7
Backlink outreach Sends backlink outreach hourly on weekdays, with a Monday report €397 €9
Distribution Picks up new blog posts hourly and plans their distribution €383 €1

8 of these 10 rest on estimated hours. Only partner outreach and backlink outreach use measured volume.

Distribution, call follow-up and partner outreach are in both tables. I'd copy those first.

What I'd do differently

Register a job before it runs

I built jobs first and the register second, and the 25 October inventory was the price.

Alert on silence

A failed run shows up. An unplugged computer runs nothing and reports nothing, so the alert has to come from the silence. I should have had the watchdog before the first job.

Write the KPIs before the automation

I started automating in March 2026 and wrote the rules for niche, ICP and KPIs on 15 November, eight months later. If you're starting with AI agents for a small business, do it in the other order.

What you can copy without an engineer

The context writing, the job list with owners, and the weekly and monthly agenda. What needed an engineer was the runtime the jobs run on, the watchdog and the fix queue.

Tomorrow, take one business line. Write its niche in one sentence, its ICP, and two KPIs with a target and a source. Then list each recurring job in that line with an owner and an alert.

So far it works very well and I'm thinking of adding a couple of other adjustments. Overall I like it very much because it gives me accountability and I see the progress and the success of what I do.

That is what the dashboard gives me. Lucie is the person.

[Writing time: 3h]

I'm Marian, a former VP of Engineering. I write about leading engineering teams and running my own business.

Originally published at marian.coach.

📰 Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.