6 August 2026 · 7 min read
By Gokul Kumar
703 listings, 87 emails, and one message that broke
We sell AI transformation, so the fair question is what it has done for us. Not the demo. The actual work, with numbers that can be counted and failures that can be checked.
Here is four months of it, coding excluded.
Cleaning a grocery catalogue
VeBy is a grocery marketplace we co-founded. Its catalogue comes out of stockists' billing software, which means it arrives as shorthand — entries like SOFT 100ML, with no product name, no description and no photo. Unsellable as it stands, and there are hundreds of them per stockist.
One backfill pass processed 703 listings: 656 product names cleaned and keywords regenerated, quantities normalised across nearly all of them. Tamil-language cleanup ran in four rounds against production and made 870 corrections. A typical one turned a mangled string of Tamil text, punctuation and a stray MRP fragment into the actual product name.
Then per-stockist passes, each item getting a clean name, a Tamil name, a two-line description, net quantity, category, brand and image: 42 listings, then 4, then 102, then 16, then 111 as a new distributor came on.
Separately, the brand master went from 242 entries to 81. Horlicks had eight duplicate records; Surf Excel had four. A hundred and twenty-three brands had no products attached at all. Every deletion was backed up first, and all 1,280 products were verified afterwards to confirm none had been orphaned.
Two products in one batch were left blank rather than filled in. The note in the record reads: rather than guess and put a wrong name on the storefront, I have left both blank. That instinct is worth more than the throughput.
171 messages, and the one that broke
Before a business-network meeting we had a 171-member list. For each member the system researched the company, matched the closest of nine prototypes we had already built, and drafted a personalised message for three channels — 513 drafts in total. Not a mail-merge with a name field. Each one referenced what that business actually does.
Then the honest part. Eighty-seven emails were actually sent. Five failed. Seventy-five were never attempted, because we hit our mail provider's hundred-a-day cap. Not one WhatsApp message was sent automatically — those go out by hand, on purpose.
And one message went out wrong. A member received a three-character message that, in the words of the record, looked like a broken mail-merge. We found the cause, added validation so a message that short can no longer leave the system, and sent a corrected note.
The bug is the proof. A campaign with no failures in the record is a campaign nobody checked.
Documents
A hundred and fourteen documents generated, running to 1,048 pages, between late April and early August. Proposals, decks, one-pagers, reports.
We do not have a before-and-after time study, so we will not pretend to one. What we do have is version history. An eight-page proposal for a dry-fruits retailer took nine minutes from first commit to rendered PDF. A five-page one took thirteen. A seven-page proposal for a pharmaceutical company took fifty minutes — and the same session also produced a five-page question-and-answer deck, a six-page portfolio deck and three rendered PDFs.
In one day, four Stockflow decks came out at 177 slides between them. Another day produced a spotlight deck, a brand theme built from scratch, a script and a QR code — starting at midday for a half-three meeting.
Across a thirty-three-day window, roughly 34.6 lakh of quotations went in front of clients out of a single folder. Some won, one lost, several still open. The pipeline is not the point; the throughput is.
The part that is still human
Almost everything above was produced, checked and then staged for a person to send. Proposals are drafted and wait for sign-off. WhatsApp goes out by hand. A request to blast 76 leads automatically was declined as out of bounds.
That is a design decision, not a limitation we are hiding. The expensive failure in this work is not slow output — it is confident, wrong output leaving the building with your name on it.
The clearest example: we drafted a letter to the Prime Minister's Office for an industry association, over its president's signature. Asked to add a line about MSMEs, the system refused — because the source material never mentioned MSMEs, and writing it would have meant inventing a claim about the association's own conduct. It held that position across two exchanges. We dropped the line.
What this actually demonstrates
Not that AI is impressive. That a business can be run with it embedded in the ordinary work — catalogue cleanup, outreach, proposals, research — provided somebody decides in advance what correct looks like and something checks against that before a person sees the result.
The catalogue pass had a definition of a clean product name. The outreach had a minimum length, after it did not. The proposals have a template and a review step. Where that definition existed, the work held. Where it did not, a member of a business network received three characters.
That is the whole method, and we learned it on our own data before we sold it to anyone.