mikee.pro Human-operated marketing Start the free training

Work and evidence

Systems in production, run by one person.

Everything on this page is running, or ran, on infrastructure someone depends on — set up and operated by one named human, not handed to a platform. Figures carry their source, window and check date. One system below is reported as broken, because it is — a case study that only contains good news is a brochure.

01Case study
  • Collins OS
  • In production
  • Snapshot 23 Sep 2026
Case study · Collins Family & Estate Law Group15 offices, Carolinas

Nine feeds, four systems, one console.

Collins Family & Estate Law Group is a 15-office firm across the Carolinas. Its marketing ran on a spread of vendor dashboards: one for Local Services Ads, one built into the CRM, one for the website, and the firm's own Friday intake sheet holding the only count of what actually walked in the door.

Collins OS replaced that spread with one system behind a login, run by one named person. It pulls nine data feeds into a single place, and every number on the screen states its source, the window it covers and how fresh it is. The managing partner and marketing director set Local Services Ads budget by office from it; intake leadership uses its weekly report; the admin console is maintained by the operator as part of the engagement.

Nine data feeds

  • Google Ads and Local Services Ads APIs
  • Lawmatics (intake and matters)
  • Rocket Matter (billing)
  • Google Business Profile
  • Call records, web analytics and the firm's intake sheet

Four systems

  • LSA Watch — ad position across 45 city and practice markets
  • Attribution engine — ad leads, calls, matters and billed revenue joined
  • AI Visibility — what six AI engines answer when asked
  • Ops agent — the weekly brief, drafted from the same data and checked by a person
Systems running — snapshot 23 September 2026
SystemWhat it doesEvidenceState
LSA WatchTracks the firm's Google Local Services ad position in 45 city and practice markets.1,395 scans in 7 days, 0 failedrunning
Attribution engineLinks ad leads, calls, CRM matters and billed revenue to price every hire.7 data checksrunning
AI VisibilityAsks six AI engines what a client would ask and records who they name.48,908 answers in 7 daysrunning
Ops agentDrafts a weekly marketing brief from the same data; a person checks it before it goes out.No brief since 5 Sepbeing fixed
  • Source Collins OS health surface
  • Window 16–23 Sep 2026
  • Checked 23 Sep 2026

The two bars nobody expects in a case study.

Exposure · before and after

On 4 September 2026 every page of the app loaded with no login. By 23 September all 69 paths tested refused access until the user logged in. The same anonymous request was run before and after, so only the login gate in front of the app can produce the new response. Server backups went from none to weekly in the same period.

4 Sep 2026100%
23 Sep 20260%
  • Measure share of app paths open to anonymous requests
  • Source anonymous request, before and after
  • Window 4–23 Sep 2026

How LSA Watch works

  1. A timer fires four scan blocks a day.
  2. A single-file queue runs them, so manual scans never collide with scheduled ones.
  3. Each of 45 queries — 15 offices across three search terms — is run against Google's ad block.
  4. Every scan and every advertiser's position is stored.
  5. Scoring computes top-2 rate, appearance and share of ad voice per market.
  6. Rules flag new competitors, dropouts and review surges.
  7. The health check fails loudly if any market goes 12 hours without a good scan.

Attribution without click identifiers

The CRM stores no click IDs, so the engine uses three models that are not expected to agree: the intake source, a phone match between ad leads and new matters, and a monthly spend cohort. Cost per hire is published as a range, and seven checks count every record that fails to join — so the gaps are visible instead of hidden.

Built on Next.js, React, Tailwind, nginx, systemd workers on a single Ubuntu VPS.
02Practice work
  • Built to prove a method
  • Not billed to a client
Practice worklabelled honestly

Small systems, built and run by one person.

These were built on the practice's own time, not on a client's budget, and each is run by the same person who set it up. They are here because each one answers a question a client later asked, and because the code and the limits are both visible.

Attribution

OpenAttrib

Self-hosted, multi-tenant ad attribution: first-party tracking, an identity graph, five attribution models and server-side conversion sync to Meta, Google and TikTok.

Practice build · self-hosted
Automation

Marketing automation agent

AI-assisted CRM follow-up, lead scoring and reporting automation, with a person reviewing anything that leaves the building.

Practice build
Local SEO

Programmatic local pages

City-level landing pages generated only from federal and reviewed public data. No invented numbers, no spun copy, every figure traceable to a source.

Prototype
Operations

Agency ads operations console

Multi-client paid-ads console pulling live pacing, budgets and reporting from the ad platforms, ClickUp and Slack into one view.

Retired Sep 2026
AI

Knowledge assistant

Retrieval-augmented system for fast, permissioned document search and question answering on internal workflows.

Practice build
Reporting

The provenance standard

The reporting convention described on this site: source, window and freshness on every figure, plus the quality checks that make the claim true.

Applied to every engagement
03What the work shows
  • Four conclusions
What the work showsread across every system

The joins are the product.

Every useful figure in Collins OS is a join: an ad lead to a phone call, a call to a matter, a matter to billed revenue. The platforms each report their own half confidently. The value is in connecting them and counting what fails to connect.

A health check is worth more than a chart.

LSA Watch fails loudly when a market goes twelve hours without a good scan. That single behaviour is why the 1,395 figure means something: an unmonitored pipeline does not produce a number, it produces a number that decays.

Publish a range when a point is a lie.

With no click identifiers, three models that disagree are more honest than one model that pretends. Cost per hire is a range, and the seven data checks report how much of the record set is missing.

Put it behind a login, then write down why.

All 69 paths refused anonymous access after the change, and that was tested with the same request used before it. A security improvement nobody can demonstrate is a claim, not a control.

Next

Your version of this starts with the free training.

This system was built by hand, and run by hand. The free training is the same build taught with an AI agent: a page, a form, a deploy — nothing to buy, nothing to install.