Floransa Floransa
Norwich, England

AI that does the work, and shows what it did.

Floransa builds working AI for ordinary businesses — a Shopify agent that rewrites a catalogue without inventing a word of it, advertising that outran the firm paying for it, a grant finder for people with no time to look. All of it running, none of it a demonstration.

1,124

published product pages under management, rewritten and audited in place

910 → 0

misplaced headings cleared in a single day, every change read back from the live shop

10 → 50+

enquiries a week for a local service business after its advertising was rebuilt

60+

responses to the same job advert, each of the three times it has run this year

58

test files that must pass before a release can deploy — a failure keeps the old version live

Figures as at 22 September 2026. The before-and-after pairs are finished work and do not change; the counts move as the catalogue and the code do.

Floransa for Shopify

Live · in daily use

The first thing the company built, and still the one it is judged by. You tell it what you want in plain English. It writes a plan, shows you the plan, and only changes anything when you say so.

Nothing else in this category will tell you where a figure came from. Floransa will. A specification comes from the manufacturer's own site or it is left out, and a guard compares the finished page against that source before anything is written back to the shop.

Every product page it rewrites is read back from Shopify after it is made, so "done" means the live page was checked — not that the request was sent. When a source blocks the crawler, it says so and asks for the specification to be pasted in rather than guessing.

It handles product pages, collection and brand pages, blog posts, internal links, image alt text and the SEO fields, and it keeps a record of what it changed on each one. It also reads the shop's own Google data, so the words it chooses answer searches people are really making.

Measured 20 September · 1,124 published pages
910 → 0
pages with a top-level heading buried in the description, where the theme already supplies one — cleared in a day
480 → 42
pages with no subheadings at all
14 → 3
pages linking to a product that no longer exists
834 → 825
pages with too few internal links — the one rule that writes a sentence a customer reads, so it goes in small batches

1,080 pages carried at least one of these faults. None of them needs a language model to fix, so the sweep that repairs them does not use one and costs nothing to run — 752 pages written in a day, every one read back from the live shop afterwards. The shop's health score went from 78 to 85.

Teaching it to improve itself

In build

An agent that keeps working needs to learn from its own mistakes. An agent that marks its own homework is worthless. The difference between those two is the whole design.

Level 1

Staying alive — fully automatic

Retrying a dropped connection, pausing when credits run out, parking a page that keeps failing, telling the shopkeeper when a manufacturer's site blocks it. No code changes, no judgement calls.

Built

Level 2

Adjusting its own behaviour — automatic and measured

The writer's lessons count which faults keep surviving its own publishing, feed the worst of them into the next rewrite, and drop a lesson when that fault rate falls. Since 30 September it also learns from its own source checks, so a slip that keeps being caught becomes a standing instruction, and it remembers where each manufacturer keeps its specifications. The instructions are fixed wording, switched on and off by arithmetic. What it cannot yet do is prove a lesson helped rather than hurt — that comparison, and the automatic revert that depends on it, is the next piece of work.

Built; the measurement is not

Level 3

Changing its own code — proposes only

The design is settled and the build comes last: an agent that takes an open fault and prepares a fix on a branch, with a test that fails before it and passes after, and the evidence for why it was needed. A person reads all three and approves. Nothing merges itself and nothing deploys itself.

Designed, not built — and never automatic when it is

An agent that can edit code can edit the tests that judge it. So it never touches the rules, the guard, the tests or the harness.

Reading the real numbers

Live

This is the part most catalogue tools do not have. Fixing pages with no idea which ones people actually find is guesswork — so Floransa connects to the shop's own Google account and stops guessing.

A shopkeeper signs in with Google and picks their Search Console site from a list — nothing chosen for them, and the save button stays off until they make a deliberate choice. Search Console supplies the thing nothing else can: the words people typed before they arrived, and the ones they typed and left.

That changes the order of the work. Pages people already see in Google's results, and that still carry faults, go to the top of the day's list, with quick fixes nudged ahead; a page nobody finds stops getting effort it will not repay.

The rule that governs it is the one that governs the writing. Code fetches the figures and code ranks the work; no model estimates a number it could have looked up, and the figures are never sent to one.

Connected sources
GSC
queries, impressions, clicks and average position, per site

Read-only, and chosen over a service account so any shop can connect its own account without needing an administrator. Floransa can see these numbers and the email address of the account that signed in; it can change nothing in the Google account, and it has no access to Gmail, Drive or ads. Tokens are encrypted where they are stored.

Advertising that outran the business

Live · client work
10 → 50+ enquiries a week

A local service business came in at roughly ten calls and emails a week. Rebuilt search advertising took that past fifty on average. A booked job is worth at least £115 to them — not every enquiry becomes one, which is why the two figures are kept apart.

The extra work funded three new appointments and the firm's expansion into a neighbouring county. The campaigns are now switched off over Christmas and New Year, and for a few weeks each summer, so the team can catch up. That is the honest measure of it: advertising paused because the business could not keep up with it.

Which created the next problem. Three appointments meant hiring skilled staff in a county where everyone is hiring, so that job got an agent too — one that researches Indeed, and a second that compares the same roles at other employers, so the advert is written against the real market rather than against a guess.

The same advert has run three times in the past year. Each time it has brought in more than sixty responses.

Finding money a volunteer group would never have found

Live

A community group in Hethersett needed grant funding for its net zero plan. Volunteers do not have days to spend reading funders' websites, and the good money is never in the obvious place.

The interesting part is how the search works. It does not ask one question and hand back a list. It hunts in five themed passes, each with its own territory — lottery and public money; energy and climate; nature and wildlife; Norfolk's own funds, including the money that comes ashore with the offshore wind farms and what developers owe under planning agreements; and the big trusts and corporate giving. The volunteers tick which passes are worth running for what they are trying to do.

Then a sixth pass runs, every time, whatever they ticked. It goes back over the strongest leads and checks them again — because a fund that looked open an hour ago may have closed, and a deadline read once is a deadline read wrong. Nothing reaches the volunteers without being looked at twice.

It also refuses to repeat itself: a full search runs once a month at most, and asking the same question twice inside thirty days is recognised and stopped rather than billed for.

What a full run costs
$40–75
the first working version — the largest model, thinking on, no limit on how long it hunted
$3–8
the same search today, after capping each pass, dropping the thinking and moving to a smaller model

Roughly a tenth of the cost, for results the volunteers could not tell apart. A grant finder that costs more than a small grant is worth nothing to a group like this, so the engineering was the point.

A site that rebuilds itself, and a series that writes its next chapter

Live

A trade association with seven member guides, a blog that had gone quiet, and nobody with a spare day a month. Two different problems, and only one of them needs a language model.

The site itself is built from source rather than edited page by page. The guides, the index, the navigation and the downloads all regenerate from one set of files, so correcting something once corrects it everywhere and the seven guides cannot drift out of step with each other. There is no AI anywhere in that — it is ordinary, deterministic code, and that is exactly why it can be trusted to run unattended.

The writing is the part that needed help. A drafting tool reads the month's published guide, looks at how the previous post ended, and drafts the next one so the series reads as one programme rather than seven unrelated articles. It takes no shortcuts with the facts: no web search, no tools, nothing but the guide in front of it.

Then it stops. The draft lands in a folder for a person to read and edit, and the association publishes it under its own name. A machine that posts to a members' website without anyone reading it first is not a feature, it is a liability.

Month four, drafted 22 September
915
words, from one model call with no tools — specific, no marketing adjectives, one thing to do this week
1
person between that draft and anything appearing on the site, by design

One a month is the intended cadence, not a schedule anything enforces. The honest limit of this kind of tool is that it removes the blank page, not the editor.

Being built next

Planning

Both of these are at the design stage. Nothing below is running yet, and this page will say so when it is.

Planning

A monthly advertising review for clients

One screen for the people paying the bill: which adverts ran, what each click cost, what went out in pounds, and what came back. A month at a time, in plain figures, without anyone having to learn Google Ads to read it.

Planning

The LinkedIn agents

Not one assistant but a set of them, working in order — set out below. For individual professionals, built on the client's own data.

The LinkedIn agents

Planning

Most profile advice is generic because the person giving it has not looked at what anyone else in your field is doing. These agents look first, and they work in an order that puts a review before anything is written.

  1. 1

    Learn the voice, and the trade

    One agent reads the client's own writing for tone and works out what business they are actually in — which is often narrower than their job title. A second looks at how people in that field write: what they post about, how they sound, and which kind of message earns a reply rather than a scroll.

  2. 2

    Compare, against real people

    The client's profile set beside others doing the same work, locally and nationally — from their own connections or found deliberately. Not just the headline: the skills listed, the advice given, what has changed on those profiles over time and where this one is thinner. It ends on the question that decides everything else — what sets this person apart from everyone else with the same job title.

  3. ✓

    A full review, before a word reaches the client

    Every claim and every proposed change checked against its source by a separate reviewing agent that did not write any of it. Nothing that has not been through this gate goes any further. It is the same rule that governs the Shopify work: the thing being judged never owns the judge.

  4. 3

    Rewrite the profile, and show the working

    A complete rewrite, delivered as a difference rather than a fait accompli: each change beside what was there before, and the weakness it answers. The client approves it. Nothing is posted to their account on their behalf without that.

  5. 4

    Keep it alive

    Posts drafted in the voice learned at stage one — achievements worth reporting, what is happening in the industry, ordinary updates. Alongside it, who is doing what: who in the field has moved, been promoted, or started hiring, which is both useful to know and the honest reason to post something.

  6. 5

    When they want to move

    The CV read against live roles in the same industry — phrasing and tone against how those adverts are written, skills and qualifications against what they ask for, and the gap named plainly. The same agents that found what sets this person apart now have somewhere to put it.

Built on the client's own LinkedIn export and what they choose to supply, plus the public web. No scraping, and no risk to anyone's account.

How it is built

Nothing is invented. A specification comes from the manufacturer, or the page goes out without it. A guard compares the finished text to the source before it is published.

Rewrites are read back. After a product page is rewritten or its SEO fixed, the shop is queried and the result is what gets reported. A request that was sent is not a job that was done. New products, articles, collections, prices and images are not read back yet.

The test suite is the gate. 58 test files run on every deploy. If one fails, the build fails and the version already running stays live.

No component reports on itself. The thing being judged never owns the judge — not the rules, not the guard, not the tests.

A person approves the code. The agent can propose a change to itself, with the test and the evidence. It cannot merge it and it cannot deploy it.

Schema: how Google reads a website

Every page can carry hidden labels that tell Google, in plain facts, what it is looking at: this is a product, this is its price, it is in stock. Visitors never see them. Google relies on them — for shopping listings and for the prices and stock shown in search results.

Because nobody sees it, bad schema goes unnoticed. The website looks perfect while Google is being told something untrue, or cannot read the labels at all.

Most websites get their schema from a template, and one mistake in a template is repeated on every page built from it. Google's own reports name the symptom — “missing stock information”, say — but not which line of the template is responsible, or whether the template is responsible at all.

We check it the way Google does: take the labels from the live pages, count every page rather than a handful, and put the result through Google's own testing tool before deciding what is wrong. Finding a fault is not the same as proving it is doing harm, so the checking comes before any fixing. Where we build a website ourselves, the labels are written in automatically every time the site is rebuilt, and our website health check reports whether any business's home page carries them.

Agents that would compare a shop's labels with its real prices and stock, and prepare the fix for a person to approve, are planned. Work on them has not started.

Template faults we check for
in stock
on every product, including sold-out ones — fixed into the template rather than taken from the product
0
a barcode beginning with zero, written in a way the code does not allow — which can stop Google reading the product’s labels at all
5,000
characters: the most Google's shopping system accepts for a product description — a template can send the whole page, however long

Each should be a small edit to put right. But the textbook fix for the stock label can make things worse: on a shop that does not count its stock, it would relabel every uncounted product as back-order — and Google then wants a delivery date for every one.

Downloads

Three short presentations and a worked example, written for people who run businesses rather than people who write software.

How it learns from its own mistakes

How Floransa checks every page it writes against the live shop, turns repeat mistakes into instructions, and never marks its own homework.

Download · PowerPoint, 13 slides

AI that writes, with a person in charge

Two writing systems and the one rule they share: nothing is published until a person has read it.

Download · PowerPoint, 8 slides

Schema: how Google reads your website

What schema is, how it goes wrong without anyone noticing, and how we check it before anything is fixed.

Download · PowerPoint, 10 slides

Example: advertising added to a live website

Advertising spaces added to a small organisation’s website without touching the live site. Names, content and prices removed.

View the example · web page

Talk to me about any of it

The Shopify app is not on the App Store yet — it runs on one catalogue, every day, and the first shops outside that one are being lined up now. If you run a specialist catalogue, or you want advertising that has to pay for itself, or something like this built inside your own business, an email is the quickest way in.

jonloome@gmail.com