Most manual work is a decision nobody finished making.
We find the recurring handwork inside your processes, prove what it costs, and replace it with something that runs on its own. Scripts, workflows or language-model agents — whichever the problem actually needs.
Exports get copied, numbers get reconciled, mails get retyped. No line item, no owner, no end date. It is simply what Tuesdays are.
Cost
It is paid in the wrong currency
Two hours a week from someone hired to think is roughly twelve working days a year — spent on a task that was never designed, only inherited.
Why it persists
Tooling was never the blocker
The blocker is that nobody has written down what the process actually does, including the three exceptions everyone works around.
02 — How it works
Two stages, in this order, never merged.
Automating a process nobody has mapped is how you get an expensive version of the same mess. The analysis is not a formality before the real work — it is what makes the build short.
Reporting handover · before / afterIllustrative
Touches 5 → 1Weekly effort 120 min → 4 minExceptions documented, not hidden
03 — What you get
Artefacts, not a slide deck.
Process map with costs
Every step, who touches it, how long it takes, and which three exceptions break the happy path. Usually the first time it exists in writing.
Week 1–2
Automation decision
What to automate, what to delete, what to leave alone — with the reasoning attached, so it survives you leaving the room.
Week 2
Running implementation
Scripts, n8n flows or an agent, in your environment or an EU-hosted one. Version-controlled, with the credentials in your name.
Week 3–4
Handover that holds
Documentation, a runbook for when it fails, and a session with whoever owns it next. If we vanish, it keeps running.
Week 4
04 — Principles
What we will not do.
No vendor lock-in
You own the repository, the credentials and the infrastructure. Not: a platform fee that outlives the project
GDPR-first, not GDPR-later
Data residency and processing basis are decided before the first line of code, not retrofitted after the works council asks. Not: a US API call quietly in the middle
Tool-open
A cron job and forty lines of Python is a valid answer. So is a language model. The process decides, not our licence agreement. Not: a language model because it looks good in the pitch
Automation is not headcount reduction
The point is that capable people work on the questions they were hired for. Not: a business case built on cutting posts
05 — Stack
Boring where it counts.
Chosen because they are self-hostable, inspectable and replaceable.
A wholesaler with roughly 40 staff rebuilt the same sales report every Monday from four exports. We mapped it, found two of the four exports were redundant, and replaced the rest with a scheduled flow and one approval step.
Python · n8n · scheduled · EU-hosted
120 → 4minutes per week
4 → 2source systems
Invoice extraction and validation
Incoming supplier invoices were typed into the ERP by hand. A locally hosted model extracts, a rule set validates against the order, and anything ambiguous goes to a human queue rather than through it.
Ollama · rules engine · on-premise
0documents leaving the EU
~ 9 hsaved per month
07 — Background
We come from operations, not from consulting.
What we bring
Leadership of business intelligence, data science and product management. Accountability for a company-wide AI rollout. Before that, pricing and sales strategy in consulting, and growth in D2C commerce.
Why that matters here
We have had to defend automation work internally — against budget, against IT security, against the question of what happens to the hours it frees up. That is a different skill from building the solution. Both are needed.
08 — Contact
Send the boring details.
No calendar link. Write what the process is, and you will get a real answer rather than a discovery call.