Suppo
Eight channels, one front desk: building a Georgian AI receptionist from landing page to owner app
Suppo is an AI receptionist for small businesses in Georgia. Think of a front-desk person who never sleeps: it is built to pick up calls (today in the browser widget), site chat, Messenger, Instagram, WhatsApp, Telegram, Viber and email, answers from one set of facts about the business, writes bookings into the calendar, and hands the chat to the owner when it should not decide alone. I founded it, designed it and built it: the landing at suppo.ge, the web portal and the owner app.
Role
Founder · Designer · Builder
Timeline
Aug to Sep 2026 · pre-launch
Surfaces
Landing · Portal · iOS app
Year
2026

A small business gets asked the same question on eight doors.
A salon, a clinic, a car service. Hands busy, phone ringing, and the same price, hours and free-slot questions arriving on Messenger, Instagram, WhatsApp, Telegram, Viber, email and site chat. Whoever is free answers, or nobody does.
Eight channels, no desk
Every channel has its own app and its own inbox. Price, hours and free slots live in the owner’s head, so every answer waits for the owner.
The alternative is a hire
An operator or an admin works one shift, needs teaching on every channel, and costs a salary.
Wrong answers cost money
A receptionist that quotes prices and books slots can be wrong in expensive ways. The owner has to see every chat and be able to step in.
No interviews here. I priced the alternative instead.
My own product, not yet launched: there was no user panel. What I could measure was what a small business pays today for the same job.
What a human costs
Live postings, 10 September 2026: an operator 1,200 to 1,550 GEL a month, an admin 1,000 to 1,400. Two hires to cover phones and social: 2,100 to 3,350 GEL.
What the rival costs
aiNOW is the one Georgian product matching all four lanes. Its equivalent bundle comes to about 1,100 GEL a month plus a 150 GEL setup fee.
Where Suppo lands
A typical Suppo bundle is 715 GEL against about 1,100 plus a 150 setup fee. On calls alone Suppo is 21% cheaper at 150 calls a month and 44 to 75% cheaper at 400 to 1,000.
The insight
The product had to cost less than the cheapest hire and answer on every channel that hire would.
suppo.ge: teach it once, every channel knows.
Live at suppo.ge since 6 September 2026: twelve sections of plain HTML, no framework, native scroll, the motion pinned and scrubbed to the scroll position. The reference was a 19.5 second promo reel; the brief was the same feel in our brand, not a copy.
The headline is the promise. The panel is the product.
The hero says it in Georgian: teach it once, every channel knows. Under it sits the portal itself as a mock, so a visitor sees the inbox before reading a feature. Next, the eight channels as eight cards around one orb.
SolvesEight channels, no desk


Show the job, not the feature list.
Five vignettes of the job: answers at 23:40, books the slot, keeps every conversation, refuses what it should not answer, quotes the price. Below, ten business categories and about a hundred business types, so a barber and a dentist both find themselves.
SolvesWrong answers cost money


43 real logos and one honest card.
43 vendor marks as real vectors, sorted by category, plus a card that says any API is connected free. The first version was a fanned carousel I loved. It went in round seven: a wall you can scan beats a fan you can admire.
SolvesEight channels, no desk

Price it like a menu, not a ladder.
Two products and two add-ons, each a card with its own volume switch: Messages 250 GEL, Calls 300, Posts 250, Ads 350 a month, 15% off for both products together, first week free with no card. This replaced three locked plans at 300, 490 and 890: a builder lets a shop buy only the lane it needs.
SolvesThe alternative is a hire

On a phone, the panel is the same panel.
The first responsive layout was rejected: on a phone it stopped being the product. So the phone hero is the desktop composition scaled as one piece. Some labels render tiny; I chose that over a panel that no longer looked like the thing you are buying. A sweep at 390, 430 and 375 points found no horizontal overflow.
SolvesEight channels, no desk

The desktop panel, scaled as one piece.

The eight cards unpinned into a stack.

Same builder, one card at a time.
16.7 ms
mean frame time on every section
Before the performance round the scrubbed sections spiked to 300 ms a frame. After the 4 September performance round: 16.7 ms mean, 17.8 ms worst, 6% dead scroll. The page lists 97 languages; 22 are live in the menu.
portal.suppo.ge: the owner watches, and steps in.
Where the owner sees every chat, teaches the agent, connects channels and approves posts. No framework, Georgian first with English complete: 1,901 keys each. Real accounts went live on 2 September and the public demo mode went the same day. An automated audit logged 109 findings, 73 serious, before the first deploy; the harden round that followed turned a 1.22:1 focus ring into a visible one.
“Soft and amazing admin panel UI, not AI slop.”
— My own brief for the portal, 31 August 2026
The agent has a face, and it is the home screen.
Home is a canvas: the orb is the agent, eight channel nodes around it, live ones joined by a solid line and dead ones by a dotted one. Under it the shift report: chats today, bookings today, money booked this week. One look says whether the line is alive.
SolvesWrong answers cost money

Connect is one button, or it says why not.
Until 2 September every Connect button here was fake. I rebuilt them real the same day: Telegram goes live the moment a bot token is saved. Meta became one button through Facebook Login for Business the next day, where the first scheme took 21 steps. Providers not ready are badged so, and the page shrank from 2,104 px to 1,460.
SolvesEight channels, no desk

Teach it from what you already published.
Live since 11 September. Paste the website, connect the Facebook page, and the agent drafts its own knowledge base for the owner to tick line by line. A real run against suppo.ge read two pages in about 48 seconds. Before this, every fact was typed by the owner.
SolvesEight channels, no desk

The agent drafts. The owner approves.
Posts and ads were two pages, 4,129 and 3,455 px tall; merged into one Marketing screen they arrive at 3,282. Every post waits for the owner’s approve tap by default; auto mode is only earned after two clean weeks, and anything flagged always waits. Ads carry a 50 GEL daily and 1,000 GEL monthly cap by default.
SolvesWrong answers cost money

1 h
the agent goes quiet once the owner steps into a chat
Since 8 September the owner can answer from the portal. The reply is sent first, so a failed send records nothing, then logged, then the agent stays silent in that thread for an hour.


Gilroy has no Georgian
Checked with fontTools: zero Georgian glyphs and no lari sign at any weight. Georgian and money render in FiraGO; the 24 weight-800 declarations were retired, 700 is the ceiling.
41 corrections from one adversarial pass
A truth judge recomputed all 129 contrast pairs and made 41 corrections across the round, three of them to my own brief, including that the live-green token was 2.01:1 on white, not the 1.6:1 the tokens file claimed.
I deleted the orb. Then I wanted it back the same day.
That 8 September round measured the home screen honestly: a whole 1440 by 900 spent on a decorative orb with zero numbers. So it was replaced with a numbers-first shift report. Correct by every rule I had written down.
Within hours I asked for the orb back, twice. It was the whole thing on the dashboard. The orb is not decoration; it is the agent, the face of the product. It came back in full, the report kept below it.
Never cut the brand to make room for the data. Put the data under it.
The same front desk, in the owner’s pocket.
On TestFlight as iOS 1.0.0 (6) since 7 September 2026, plus an internal Android build; no store listing yet. A second client of the same portal API with no backend of its own, forked from the Goldmarket app already on TestFlight and re-tokenised to Suppo. The iOS build compiled with 0 errors and 0 warnings.
Five tabs, one glance.
Home is the orb and its ring, then a line that counts live channels honestly. Conversations shows every channel in one list, the outcome as a chip: booking made, answered, saved call. Open one and you read the transcript the agent had.
SolvesWrong answers cost money

Seeded local data. The count under the orb only lights for channels that are truly connected.

Seeded local data. Every channel in one list, the outcome as a chip.

Seeded local data. What the agent said, in the owner’s hand.
Approve, book, or leave it to the agent.
Posts is an approval queue: by default nothing publishes without a tap, and auto mode is only earned after two clean weeks. Bookings is a day strip with Google Calendar beside it. A booking outside opening hours used to render nowhere in the portal; the app had the badge from day one, and now the portal day says so too.
SolvesEight channels, no desk

Seeded local data. By default nothing publishes without the approve tap.

Seeded local data. A closed day with bookings on it says so instead of hiding them.
Georgian never gets shouted.
React Native has no font fallback chain, so every text node picks its family per string: Latin gets Gilroy, anything else FiraGO, and Georgian is never uppercased. The dictionary is 1,836 keys generated from the portal, never hand-typed.
SolvesEight channels, no desk

Everything the portal has, one level down.

The same builder as the landing, inside the app.

Services, facts, greeting, voice.

Telegram goes live the moment a bot token is saved.
More of the app

Email and password; Google sign-in is not built in the app yet.

What the agent says about where and when.

Honest empty state: no page connected, no numbers.

The spend cap is visible before the ad account is.
A merchant account needs proof the agent behaves.
To take card payments Suppo had to pass its payment provider’s know-your-business review, so the last week was rules, not screens. The strongest argument is structural: Suppo only answers. No outbound call, no mass dial, no bulk send anywhere in the engine.
Gates built on 11 September
Verification status with a checkout gate; email verification on signup; bookings that require confirmation; a data retention purge; prompt guardrails; terms consent; a recording notice flag on the phone channel.
Six legal pages from one build
Terms in 22 articles, privacy, cookies, a data agreement, refunds and a call-recording notice, all in the landing’s design; KYB clauses added on 9 September.

What is live today, and what is not.
Live
suppo.ge; the portal with real accounts; knowledge import; posting and ads; Telegram and Messenger on the showcase account. Instagram is connected through the same button but its account link is not yet confirmed. Card checkout is wired to the payment provider and waits on a first real payment.
Waiting on someone else
Real phone numbers are built but off until a carrier account and a Georgian number exist; calls today run in the browser widget. The Meta app waits for App Review, Google sign-in is in testing mode, Viber needs a paid bot application.
Not built
Push notifications, a live voice call on the app’s orb, Google sign-in inside the app, the SMS confirmations the terms promise. No customer, usage or revenue numbers exist yet, so none appear here.
What is measured so far.
16.7 ms
Landing frame time, mean
Down from spikes of 300 ms
−31%
Channels page height
2,104 px → 1,460 px
1,901 / 1,901
Georgian and English keys
Full parity in the portal
363 / 363
Engine tests passing
At the 11 September deploy
One receptionist, three doors: the page that sells it, the portal that trains it, the app that carries it. The customer numbers come next, and they will be measured before they are written here.
More screens




Next case study
Goldmarket
A Georgian marketplace for gold and jewellery — designed, coded, tuned and shipped to web, iOS and Android by one person.