AI agent project2 min read
Business Reporting Agent

Tech stack
Services
- →Multi-source data collection (GA4, WooCommerce, CRM, Sheets)
- →Anomaly detection against rolling 30-day baseline
- →AI-generated narrative with ranked recommended actions
- →Scheduled daily delivery to Telegram and email
- →Custom report structure aligned to business priorities
Deliverables
- ✓Daily AI report delivered to Telegram and/or email each morning
- ✓Data pull from GA4, WooCommerce, CRM, Google Sheets
- ✓Anomaly detection, flags metrics outside normal range
- ✓Abandoned cart summary with recovery action suggestions
- ✓Recommended actions ranked by estimated impact
Challenge
A business owner was making decisions based on gut feel because assembling the actual data took too long. GA4, WooCommerce, the CRM, and a revenue spreadsheet each lived in a different tab. Cross-referencing them to answer "how did yesterday go?" took 25, 30 minutes when it happened at all. Important signals, a traffic spike without matching conversions, a batch of abandoned carts, a CRM lead going cold, were being missed entirely.
Options Considered
- BI dashboard (Looker Studio, Metabase), solved the data aggregation problem but still required the owner to open it, interpret the charts, and decide what to act on. No push, no narrative.
- Manual weekly report by a VA, added labour cost and lag; daily cadence wasn't viable.
- AI agent that pulls, interprets, and narrates the data: chosen. Delivers a written summary to Telegram or email each morning with the numbers, the anomalies, and specific recommended actions, no dashboard to open.
Decision
The agent runs on a morning schedule. It pulls yesterday's data from GA4 (sessions, conversions, top sources), WooCommerce (revenue, orders, abandoned carts), the CRM (new leads, deal movements), and any connected spreadsheets. It identifies anomalies, metrics more than one standard deviation from the 30-day average, and generates a plain-language summary with three to five recommended actions. The summary is sent to Telegram and/or email.

Implementation
A Python scheduler triggers daily data collection via the GA4 Data API, WooCommerce REST API, CRM API, and Google Sheets API. Raw numbers are passed to GPT-4 with a structured prompt that instructs the model to identify trends, flag anomalies, and produce actionable recommendations ranked by potential impact.
Anomaly detection uses a rolling 30-day baseline computed at collection time, with no separate ML model required. The final report is formatted as a concise Telegram message with bold headers and bullet points, optimised for reading on a phone in under 90 seconds.
Outcome
Daily review time dropped from 30 minutes (when it happened) to 90 seconds (every day). Two revenue-impacting anomalies, a broken checkout form and a surge in returns from one product line, were caught within 24 hours instead of being discovered in a weekly review. Decision-making shifted from reactive to proactive.
Related
Projects

Traffic Connect, AI Content Orchestration for WordPress Sites
Before: AI article generation had to be run across many WordPress sites, with no single place to control it. After: one admin dashboard queues tasks for every site, and each site picks up its own work through a plugin, built from scratch in about a month.

PREZA, School Presentation Sites with 80,000+ Generated PDFs
Before: school presentation sites needed tens of thousands of ready files that nobody could produce by hand. After: grabbers, parsers and automated multi-threaded generation produced more than 80,000 PDFs, stored in Selectel cold S3 and published on preza.kz and preza.top.

AtomPk Grabber - Product Lists into CSV on Demand
Before: a partner needed the product list off a website collected into CSV again and again, by hand. After: a double-clickable executable that walks the catalogue and writes the CSV, with no Python to install and nothing to configure.
Open for contract collaboration
I am available for contract-based collaboration. If you have an interesting project idea, schedule a call via Calendly.
Schedule a 30-min call