← Insights

Dossier · How we work

We gave our social media to AI.
A human still says yes to every post.

The full build inside the five-part system that drafts, schedules, measures and improves our LinkedIn presence for the price of a few coffees a month: the four voices, the honesty architecture, what broke on the way, and what half a year of its output looks like in LinkedIn's own numbers.

By Back From the Future Practice 26 min
Series: BFF Insights · field dossier
Topic: AI in practice · marketing operations
By: Back From the Future
Published: July 2026
Method: A description of our own production system, with results taken from LinkedIn's native analytics. See the verification note at the end.

Why this, why now

Two things happened in the first half of 2026. Our system stopped needing us for anything except judgment, and the feeds around it filled up with machine-written noise. That combination is worth documenting from the inside.

Generative AI made publishing free, and the result is visible on every feed: more volume, less signal, and a reader who now assumes a confident post was written by nobody. At the same time, the case for automation has never been stronger, because the labour of running a serious content operation is exactly the kind of work machines do well. Those two facts point in opposite directions, and most companies resolve the tension by picking one failure or the other: stay silent, or join the noise. We spent a year building a third option, and as of this summer we can show what it produces rather than argue what it should produce. This dossier is the full design, including the parts that broke.

2025
The manual era: posting when time allowed, one feed trying to serve every audience. The classic silence problem.
Jan 2026
The measured year begins. Four voices, each with its own job, cadence and metric.
Jan-Jul 2026
The broad feed draws 694,527 impressions, up 429 percent on the prior period. 92 percent of reach lands beyond our own network.
Jun 2026
The drafting engine goes fully autonomous. One manual step survives, on purpose: a human approving every post.
Jul 2026
The learning loops switch on: performance and voice weekly, with the first quarterly strategy review scheduled for September.

1. The argument: hand over the labor, keep the judgment

Most companies talk about using AI. We run parts of our own company on it, and the most visible proof is probably the feed that brought you here.

Every post on our LinkedIn channels is drafted by a system that reads a research archive of more than fifteen thousand sources, writes in one of four distinct voices, schedules itself, measures what landed, and adjusts how it writes the following week. Running the whole thing costs us somewhere between twelve and eighteen euros a month.

There is exactly one thing the system may not do: publish. A person reads and approves every post before it goes live. That single rule contains the entire philosophy. Give the machine the labor. Keep the judgment for a human.

We built it this way because the two usual outcomes both fail. The first is silence: a company knows it should be visible, nobody has time, and the account goes quiet for weeks. The second is slop: someone points a generic AI writer at the feed and it produces confident, forgettable filler that a reader clocks as machine-made in about a second. Both come from the same mistake, treating the whole job as one thing. Reading three hundred articles a week is labor. Deciding what is worth saying under your own name is judgment. Once you separate those, you can automate almost all of the first and protect all of the second.

What follows is the actual machine, described the way we would explain it to a client who asked how it works. We think the design is more interesting than any single post it produces.

2. Against the slop

Almost every "AI on social" setup gets the split backwards. It hands the machine the judgment and keeps the labor. We do the opposite, and every design choice below follows from that one inversion.

Look closely at a typical automated feed and you find the machine deciding what to say, deciding whether the claim is true, and deciding to hit publish, while a person is left copying links and resizing images. That is judgment automated and labor retained, exactly the wrong way round. Our system does the reading, drafting, formatting, scheduling and measuring. A person decides what is worth saying and whether it ships. The labor is the part a machine is good at. The judgment is the part it is not.

Slop has a specific cause, and it is not the model. It is one undifferentiated feed asked to do everything at once. When a single account chases awareness, authority, proof and depth in the same stream, every post regresses toward a bland middle that serves none of them. So we refuse the single feed. We run four voices, each with its own job, audience, language, cadence and metric. Nothing has to average out to generic, because nothing shares a target.

The clearest evidence that this works sits in the voice we tuned most carefully. The Dutch specialist voice is deliberately niche and measured on engagement rate rather than reach. Because it is not chasing volume, it runs at roughly three to four times the engagement of the broad feed. Narrowing the audience and refusing the vanity number is what makes the number good.

Two more choices keep the output from thinning out. Drafting starts from an archive of more than fifteen thousand sources, so a post carries a real point of view instead of a paraphrase of the prompt. And the company page is throttled on purpose, so proof reaches people through a founder vouching for it rather than through an account shouting into an empty room. Restraint is doing most of the work here.

The inversion in one line: generic AI social keeps the labor and gives away the judgment. We give away the labor and keep the judgment. Everything after this section is that sentence, engineered.

3. The loop, end to end

Five independent services make up the system, and they form a loop rather than a line. Content is drafted, a human approves it, publishing and measurement run on their own, and what we learn flows back into how the next batch gets written. The diagram below shows the whole circuit, with the single human gate marked where it belongs.

Diagram of the five-service publishing loop with one human approval gate
The end-to-end loop: five services and one human gate. Source: BFF.
StageWhat happensWho is in control
DraftThe engine reads the archive, picks the strongest stories, groups the related ones, drops anything stale, and writes posts in the right voice with a proposed date and time.AI
ApproveEach draft lands in a planning board as a proposal. A person reads it, edits or rejects it, and marks the keepers approved.Human
ScheduleApproved posts are slotted into the publishing queue per channel, at the proposed time, with the image attached.AI
MeasureReach and engagement for each post are pulled back in weekly and written next to the post that earned them.AI
LearnThe system compares what a human rewrote against what it drafted, spots the patterns, and proposes changes to the voice. A quarterly pass looks at the strategy.AI drafts, human approves

Nothing here is exotic on its own. The archive is a searchable database of things worth remembering. The drafting engine is a set of prompts wrapped around a good language model. The scheduler talks to an ordinary publishing tool. The value is in how the pieces are wired, and in the fact that they run whether or not anyone is at a desk. The drafting job fires several times a day. The measurement job runs weekly. The strategy review runs four times a year. None of them wait for us.

The shape that matters: a loop, not a pipeline. A pipeline ends when the post is published. A loop feeds the result back in, so the writing this month is shaped by what worked last month.

4. Four voices, four jobs

We do not post from one account. We post from four, because they do different jobs for different audiences, and treating them the same would waste all of them.

Early on we made the classic mistake of pushing everything through one personal feed: English thought pieces, Dutch commercial updates, company news, all of it. The volume diluted the signal and the audience could not tell what the account was for. Splitting the voices fixed it. Each one now has a single job, its own audience, and its own definition of success. The figure below maps each voice to the job it does and the number it answers to.

Four voices mapped to their audiences, jobs and metrics
Four voices, four jobs. Source: BFF.
VoiceAudience & languageJobMeasured on
The SignalBroad, English, personal feedAwareness. Three posts a day, every day, from the research archive. The top of the funnel and the standing audience everything else draws from.Reach and keynote inquiries
The specialistNiche, Dutch, personal feedAuthority on change management. A smaller crowd that engages several times harder than the broad feed. Roughly a dozen posts a month.Engagement rate
The company pageDutch, company accountProof. Real, consent-checked client moments, never invented specifics. Throttled by the platform, so it travels only when the two founders reshare it.Founder reshare within the hour
The newsletterEnglish, long formDepth. A weekly synthesis of the week's stories woven into one throughline. Converts the awareness crowd into a standing, exportable list.Subscribers

The company page is worth a note, because it shows how much of this is plumbing rather than magic. Company pages barely reach anyone on their own, so a page post is only as good as the founders resharing it. Instead of hoping they remember, the system writes two reshare takes at draft time, one per founder, each a fresh angle rather than a restatement, and drops a calendar reminder with the text already written. The reshare becomes a ten-second job: open the post, paste, done. We removed the excuse, not the human.

5. The one rule: a human approves every post

The system can write, schedule, measure and learn without us. It cannot publish without us. Every draft waits in an approved-or-not state until a person clears it. This is the deliberate bottleneck, and we would not remove it even if the drafts were perfect.

The reason is that these posts go out under real names, and a name is the one asset the machine cannot rebuild. A weak post costs a little attention. A wrong post, a misread claim, a client mentioned who did not agree to be, an overstated number, costs trust, and trust is the thing our whole business runs on. Approval is cheap. It takes a few minutes a day. The downside it protects against is not cheap at all.

The approval step also keeps the humans in contact with the output, which quietly protects quality over time. Because a person reads every draft, they notice when a voice drifts, when a topic is getting stale, when the system leans too hard on one kind of post. That noticing is what feeds the learning loop. An operator who never reads the drafts would have nothing to teach the machine.

Automate the labor all the way to the edge of judgment, then stop. The engine does everything up to the decision to speak. The decision to speak stays with a person. That line is where the system is designed to hand off, on purpose.

6. Honesty, built into the machine

The hardest part was never writing text. It was making visuals we could stand behind. A chart is where an automated system can quietly lie, by rounding a number, inventing a data point, or emphasizing the wrong bar. So we engineered honesty into the pipeline instead of hoping for it.

Many of our posts carry a data chart, and we rebuild those charts in our own house style rather than posting a blurry screenshot. Rebuilding a chart means reading its numbers and drawing them again, which is exactly where errors creep in. Our defense is a set of separations that make it hard for a single mistake to reach the feed. The diagram below shows the two walls and the three gates that every visual has to clear.

Diagram of two separation walls and three review gates for charts
Two walls and three gates. Source: BFF.

Two walls that never move

The first wall: the model that reads a chart is never the model that checks the result. One system extracts the data, a different one verifies it against the original. A reader who marks their own homework passes everything. Two independent readers catch what one would miss.

The second wall: the system that fixes a flawed card is never the system that judges it. When a card fails review, a separate model proposes a bounded correction, shrink a label, add margin, re-highlight the right series, and the judge re-checks. The fixer is fenced in by code so it can move things around but can never touch a number, a color, or the source line. Freedom over layout, hard walls around the facts.

Three questions every card has to pass

Gate 1: Is it the same data and the same story?

Checks: fidelity

An adversarial side-by-side of the original against our remake. Printed numbers must match exactly. Nothing may be invented. If it fails, we frame the original chart instead of our rebuild.

Gate 2: Is the card legible and well composed?

Checks: design

Automatic fail on clipped labels, unreadable contrast, broken proportions or mismatched numbers. On a fail it walks down a repair ladder, and the worst case is that the plain original ships.

Gate 3: Does the card carry the post's actual point?

Checks: message

Accurate and pretty is not enough. If the post argues "better and cheaper" and the card only shows price, a reader would miss half the claim, so it fails. The routing starts from what the post argues, not from what the chart happens to be.

When all three gates cannot be satisfied honestly, the fallback is not a prettier lie. It is the original chart, cropped onto our card with our headline and its real source. Zero fidelity risk. We would rather ship a plain true chart than a beautiful wrong one.

7. What broke: the build journey

Everything above reads clean because we are describing the version that works. It did not start there. The credible way to explain a system like this is to say what we got wrong first, because each fix is where a real design decision lives.

The first break was the one personal feed. Serving every audience from a single account felt efficient and diluted everything: the English awareness posts, the Dutch commercial ones, the company news all fought each other for the same attention and none of them won. The fix was to split into separate voices with separate jobs and separate metrics, which is the four-voice structure the rest of this report is built on. Once each voice answered to its own number, none of them had to compromise.

The second break was subtler and more dangerous: overclaiming. A system like this can quietly let a machine take credit for a human's work, or let a human's name carry a claim the machine invented. Both are trust failures, and once a reader catches one they discount everything else. We designed against it directly by refusing to let any component wear two hats. The extractor that reads a chart is never the verifier that checks it. The maker that builds a card is never the judge that passes it. Nobody grades their own paper.

The third break was the media step. Not every post has a good visual sitting ready, and the tempting failure is to let the system invent one to fill the slot. We refused that. The media step needs a fallback that fails safe, so when no honest visual exists, the system flags a human to export one rather than fabricating it. The figure below shows the ladder it climbs, and why the last rung is a person on purpose.

Four-rung media fallback ladder ending in a human flag
The media ladder: the first good rung wins. Source: BFF.

The ladder has four rungs and takes the first one that holds. Rung one: use a real visual pulled straight from the archive, because a true image beats any generated one. Rung two: if there is no archive image but there is a data story, rebuild the chart in house style, run through the three gates. Rung three: if there is no chart either, generate a plain stat card that shows only numbers we can stand behind. Rung four: if none of that produces something honest, flag a human to export the real asset by hand. The last rung is deliberately manual. When the machine cannot be honest cheaply, we would rather pay a human minute than accept a fabricated image.

The fourth break was the reshare. Company-page proof only travels when a founder amplifies it, and our first version left that to memory, which is another way of saying it did not happen. Cross-boost had to be engineered, not hoped for. Page posts now ship with two pre-written reshare takes, one per founder, plus a calendar reminder with the text already in it. "Someone will reshare it" is not a plan. A drafted take and a reminder is.

8. How it learns: three loops on three clocks

A system that only publishes gets stale. Ours improves on three separate rhythms, because the questions it needs to answer move at different speeds. The diagram below lays the three loops out on their three clocks.

Three learning loops running on weekly, weekly and quarterly clocks
Three learning loops on three clocks. Source: BFF.
LoopClockQuestion it answers
PerformanceWeeklyAre the posts working? Reach, engagement, consistency, best and worst formats, and leads captured, written back next to each post.
VoiceWeeklyAre we writing them the right way? The system diffs what a human rewrote against what it drafted, and when a pattern repeats it proposes an update to the voice.
StrategyQuarterlyAre we aiming at the right things? A deep pass over a quarter of data proposes changes to cadence, voice mix, format focus and targets.

The voice loop is the subtle one, and it is where a person's edits stop being one-offs and become teaching. When a human rewrites a draft, that edit is not thrown away. If the same kind of change shows up across several posts, the system reads it as a preference and proposes to fold it into the voice, so the drafts drift toward how we actually write. A correction made once quietly becomes a correction the machine stops needing.

None of the three loops changes anything on its own. Each one proposes; a human disposes. The performance report lands in an inbox. The voice update arrives as a change to approve. The quarterly review is a memo, not a switch it flips. The same rule from the publishing step, machine proposes, human decides, runs all the way through the learning layer too.

9. What it produced: half a year, measured

Until now, the honest answer to "does it work" was a description. As of July 2026 it is a number: LinkedIn's own analytics for the broad feed, January 1 through July 6, are below, unedited and with the caveats attached.

Consistency came first, because it is the thing humans reliably fail at. Three broad-feed posts a day, including weekends. A Dutch specialist voice about a dozen times a month. A weekly newsletter that never skips. Consent-gated company-page proof whenever a real client moment clears the check. Any one of those is easy for a week. Holding all of them for six months is what the system bought, and the reach data shows what consistency compounds into.

Cumulative impressions on the Signal feed, 694,527 year to date, up 429 percent
Reach that compounds instead of expiring. Source: LinkedIn analytics, Signal feed, Jan 1 to Jul 6, 2026.

The headline is 694,527 impressions in the first half of 2026, up 429 percent on the prior 187 days. The shape of the curve matters more than the total: it steepens, because the archive, the audience and the voice all compound, where a feed that posts sporadically resets to zero each week. None of this was bought. There is no ad spend anywhere in the system.

Results panel: 369,307 people reached, 92 percent out-of-network, 4,654 engagements
The proof is public, and most of it reached strangers. Source: LinkedIn analytics, Jan 1 to Jul 6, 2026.

The number we watch hardest is the smallest one on that panel: 92 percent of the 369,307 people reached were outside our own network. In-network reach is your connections being polite. Out-of-network reach means the platform distributed the content to strangers on its merits, which is the mechanical opposite of what happens to generic AI filler. The engagement profile points the same way: of 4,654 engagements, 576 were saves and 158 were sends. People do not save and forward noise.

Top posts by impressions, led by robotics and exponential-tech topics
What broke out: the top Signal posts of 2026. Source: LinkedIn analytics.

The leaderboard closes the loop on this dossier series itself. The posts that travelled furthest this year are robotics teardowns and exponential-growth stories, led by a Boston Dynamics Atlas piece at 92,095 impressions, published two weeks ago, well inside the autonomous era. That is why the two companion dossiers in this series cover humanoid robotics and exponential technology: the feed told us where the audience's curiosity is, and the library work followed the data.

What these numbers do and do not prove. They prove reach, consistency and out-of-network distribution, produced at near-zero marginal cost. They do not yet prove pipeline: the system went fully autonomous in June 2026, and the lead-capture layer in section twelve is still being instrumented. We publish the strong number and the unfinished part in the same breath, because that is the standard we hold the system itself to.

Underneath the posts, the system builds an attribution surface, which is the part that matters for a business rather than a follower count. Keynote inquiries tie the broad feed to real pipeline, so the account is not a cost center guessing at its own worth. Newsletter subscribers convert a rented audience into an owned, exportable list, which is the difference between borrowing attention and keeping it. And the strongest material gets a second life: the newsletter republishes into the insights library on our website in English and Dutch, and a post that breaks out is expanded into a long article and filed in the same place. The feed does its work in a day. The library keeps that work, and this dossier sits in it.

10. What it costs, what it compounds

The number that surprises people is the bill. The whole system runs on roughly twelve to eighteen euros of model usage a month.

That figure holds because effort is spent where it changes the outcome, not spread evenly. The rare, high-leverage decisions, choosing which stories are worth telling, updating the voice, the quarterly strategy read, run on the deepest, most expensive reasoning we have. The high-volume, low-stakes work, reading a chart, a quick legibility check, runs lean and fast. The quarterly strategy review is the single most important call in the system, and because it happens four times a year, the deepest configuration for it costs about a euro annually. The figure below sets the monthly cost against what the system ships in the same month.

Monthly model cost set against monthly output volume
What it costs, what it ships. Source: BFF.
~€15
total monthly model cost to run the whole system
5
independent services in the loop, all live
1
manual step: a human approving each post

Set the bill against the output it buys: roughly a hundred posts a month across four voices, measured, learning, and reaching two-thirds of a million impressions a half-year. The comparable human operation, a content marketer plus a designer plus an analyst holding that cadence without weekends off, does not cost fifteen euros. The point is not that people are replaceable. It is that this particular labor was never a good use of them, and the judgment that was always the real job now gets minutes of attention per day instead of none.

We treat the whole thing as a working example of the way we tell clients to adopt AI. See what it can do, understand where it fits, then adopt it in a way that keeps a human responsible for the parts that carry risk. The social system is that advice, running on ourselves, in public, every day.

11. The obvious objections

Publishing a system like this invites four fair questions. They deserve straight answers rather than a roadmap slide.

"Doesn't LinkedIn punish AI content?"

Platforms punish content nobody wants, whatever wrote it. The 92 percent out-of-network share in section nine is the platform's own distribution engine rewarding these posts on merit. What algorithms increasingly do punish is the generic kind of machine output, and the entire design, archive-grounded drafts, four narrow voices, human approval, exists to not produce that kind. The honest caveat: platform policy can change without notice, which is exactly why the newsletter list and the website library, the two channels we own outright, are load-bearing parts of the system and not decoration.

"Is it still authentic if a machine drafts it?"

The authenticity of a post never lived in the typing. It lives in whose judgment picked the story, whose standards it had to clear, and who put their name on it. All three stayed human: the archive is our years of curation, the voice is trained on our own rewrites, and nothing ships without a person deciding it should. What the machine replaced is the reading and the formatting, and nobody ever called those the authentic part.

"Why not just hire an agency?"

An agency solves the labor and rents you its judgment, which is backwards for a firm whose product is its point of view. The economics are also not close: a serious retainer runs three to four orders of magnitude above fifteen euros a month, and the agency still cannot read a private archive of fifteen thousand sources it does not have. Where an agency genuinely wins, big creative campaigns, film, brand work, is work this system does not attempt.

"Why publish the recipe?"

Because the recipe was never the moat. The moat is the archive, the taste encoded in the voices, and the discipline to keep a human in the loop when it would be cheaper not to. A competitor can copy the architecture tomorrow, and we would gain a peer producing less slop. We consult on exactly this kind of adoption, so a public, working, measured example is worth more to us than a secret.

12. The roadmap

The system publishes well. The next moves are about capturing, turning the audience it reaches into conversations and pipeline the business can act on.

Lead capture is next. The broad feed already produces keynote inquiries; the work is to shorten and instrument that path so we can see exactly where an inquiry started and how it moved, instead of inferring it after the fact.

Comment-to-DM automation is the second move. The highest-intent readers are the ones who reply, so turning a public comment into a private conversation, quickly and without a human babysitting the inbox, is where public engagement becomes real dialogue.

Richer media matching extends the ladder we already run. Better retrieval of a real archive visual, before the system ever falls back to a rebuilt chart, means more posts carry a true image and fewer lean on a reconstruction. The honest rung gets used more often.

And the compounding assets get thicker. The newsletter keeps feeding the library, breakout posts keep expanding into articles, and each cycle adds to a body of work that a reader can search long after the post scrolled away.

13. Eating our own dogfood

We are an AI consultancy publishing exactly the kind of system we would build for a client. That is the whole point of showing it. The showcase is the proof, and the proof is the pitch. You are not reading a case study about someone else's adoption. You are reading the output of the thing being described.

It also maps onto how we tell clients to move: See, then Understand, then Adopt. A reader sees a running system in the feed that brought them here. They understand the design choices in this report: the labor-judgment split, the four voices, the honesty architecture, the human gate. Then they get a build-your-own playbook they can run themselves. Each step is a step further into doing it, not just reading about it.

The honesty architecture is our point of view made mechanical. We believe a machine at work should never be able to grade its own paper, and we did not write that down as a value, we built it into code that keeps the maker away from the judge and the extractor away from the verifier. And because the system learns on three loops on three clocks, the thing that publishes about adopting AI is itself continuously adopting. It gets better at its own job the way we ask clients to get better at theirs.

You do not need our exact stack to do this. The parts are ordinary and swappable. What carries over is the set of decisions underneath, which we would give to anyone starting out.

Split labor from judgment, then automate only the labor

Write down every part of the job and mark each one. Reading, drafting, formatting, scheduling and measuring are labor. Deciding what to say under your name is judgment. Automate hard on the first list. Do not touch the second.

Keep a cheap human gate, and read every draft

Approval costs minutes and protects the one asset the machine cannot rebuild, your credibility. The reading is not overhead. It is what keeps the operator close enough to the output to teach the system.

Engineer honesty, do not request it

Separate the maker from the judge and the reader from the verifier. Give the correcting step freedom over layout and no access to the facts. A prompt that says "be accurate" is a wish. A structure where one part cannot alter what another part checks is a guarantee.

Close the loop, or it goes stale

Measurement that nobody reads back into the writing is decoration. Turn edits into teaching and results into next month's brief, and the system gets better while you sleep. Skip it, and you have an expensive way to post the same thing forever.

The reason we published this rather than kept it quiet is simple. The interesting thing about AI at work is rarely the model. It is the wiring around it: where you let it run, where you make it stop, and how you keep it honest. If you want to see what that looks like in practice, the feed is right there, and a person approved every post on it.

14. The numbers, verified

A dossier about an honesty architecture should show its own homework. Every figure in this report, its source, and the caveat that belongs to it.

ClaimConfidenceNote
694,527 impressions, +429% vs prior 187 daysHighLinkedIn native analytics, Signal feed, Jan 1 to Jul 6 2026. Read directly from the platform; screenshots retained.
369,307 members reached; 92% out-of-networkHighSame source. LinkedIn defines the in/out-of-network split; we report it as given.
4,654 engagements: 3,507 reactions, 375 comments, 38 reposts, 576 saves, 158 sends, plus 654 link clicksHighSame source and window.
Top post 92,095 impressions (robotics), and the topic leaderboardHighPer-post impressions from the same analytics; topic labels are ours.
Specialist voice at 3-4x broad-feed engagement rateMedium-highOur own weekly performance tracking; the multiple varies by month within that band.
~€12-18 per month running costMedium-highMetered model-usage billing across the five services. Excludes the scheduler subscription and the human minutes at the approval gate, which is the design's point.
Fully autonomous drafting since June 2026; learning loops live from July; first quarterly review SeptemberHighOur own deployment dates.
What is not claimedNo revenue attribution is claimed yet; the lead-capture layer is being instrumented. Client names appear on the company page only with recorded consent.

Charts labelled "BFF" are drawn by us from the sources named beneath them. The reach, results and leaderboard charts redraw LinkedIn's own analytics without adjustment.