For 14 years my promotion workflow looked like most small businesses: an SEO contractor sent a monthly ranking report, an SMM plan was written from inspiration, and traffic lived in an analytics account nobody opens daily. Three worlds, zero connections.
This month I shipped an update to my own CRM that closes the loop. Here's the engineering story.
The loop
Semantic gap -> task -> article -> five networks -> traffic -> correction.
Everything below exists to keep that loop visible on one screen.
1. A collector that speaks numbers
I wrote a collector script that pulls four data flows into a single JSON file:
- Traffic. Visits by day, 30-day totals, month-over-month delta, organic share. It talks to a self-hosted analytics module through its REST API.
- Semantics. My project's semantic core: 1,188 search phrases in 15 clusters.
- Coverage. The core matched against the live sitemap. Blog slugs are Cyrillic transliterated to Latin, with an exceptions map for words that already live in Latin (bitrix, crm), so I can match cluster phrases to URLs. Coverage comes out at 80%, and the gaps come out as a ranked list. That list is a computed content plan, not a guess.
- SMM. Publication counts and statuses read straight from the pipeline's Postgres, plus drafts waiting in the queue. The JSON feeds a REST endpoint, the endpoint feeds a CRM tab, and one Refresh button re-runs the collector. It's current again about a minute later. ## 2. A content pipeline with a taste test I write each article once; an agent adapts it per platform. Telegram, VK and MAX for the Russian audience, Dev.to and LinkedIn in English. Limits and tone differ, and the pipeline validates length before anything ships. The part I care most about is the linter. Before a human sees a draft, it runs five checks modeled on what public AI detectors measure: sentence-length variation, concreteness, stock vocabulary density, typographic fingerprint, and voice. Machine-written drafts fail, and they're rewritten until they pass. That gate is why this post doesn't read like a template. ## 3. A board that reads the numbers My CRM runs an AI board of directors: a CEO role tracking a weekly plan, a CFO watching cash and price floors, a commercial director on receivables. With this update they get marketing KPIs too: visits delta, semantic coverage, posts shipped in 30 days, the top uncovered cluster. When a verdict lands in the shared journal, it's backed by the same numbers the screen shows. ## What changes in practice If you run promotion for a small business, three things change:
- "What should I write next" becomes a computed answer. The system names the uncovered cluster; I write.
- "Did that post bring traffic" is one glance instead of three logins.
- Marketing spend defends itself with the dashboard your money people already read. ## What's next Next stop is a Google Search Console adapter, so the loop closes on queries and clicks from search itself. The design leaves room for it: collectors are pluggable, and the screen doesn't care where a number came from. --- This article was prepared with AI assistance (drafting and adaptation) and reviewed by the author before publishing. Originally published at https://automata.sale/en/blog/ai-automation/automata-crm-pult-prodvizheniya/ tags: aiagents, automation, marketing, indiehackers
Top comments (0)