Ten layouts, one escape hatch: how our Instagram rotation collapsed into a single design
The audit said "zero violations". The account said otherwise: one of ten layouts had been drawn in 11 of 35 posts. Here is what the counter got wrong, what the record fixed, and the numbers before and after.

Postiada turns every article into Instagram and Facebook posts using ten fixed layouts — we call them archetypes — that rotate in order: 01, 02, 03 … 10, then back to 01. The point of a fixed rotation is that a feed looks varied without anyone choosing a design by hand. On 28 September 2026 we counted what had actually been published on @istambulguide, the account of our own site istambul.com, and found that the rotation had quietly stopped rotating.
What did the account actually look like?
Of the 35 posts published with the archetype system, layout 02 — the “accent block”, a single photo with headline bars — had been drawn 11 times. Every layout that needs one photograph appeared three or four times. Every layout that needs several photographs appeared once or twice. The last eleven posts, in publishing order, were 1, 2, 3, 2, 5, 2, 7, 9, 1, 2, 3.
Nothing about this was flagged. The rotation audit we run every morning asks two questions — did the same layout appear twice in a row, and was a layout skipped without a recorded reason — and the answer to both was no. The audit was right and useless at the same time, because nobody had asked it the third question: how often has each layout been drawn?
Why did a fixed rotation drift?
The order was computed from a counter: the site’s total number of published posts, modulo ten. Post number 11 gets layout 01, post 12 gets 02, and so on. Two other rules sit on top of that. If a layout cannot be drawn because the material is not there — layout 04 wants six frames, and the article only has one photograph — the post falls back to 02, the one layout that works with any single frame. And a layout that was drawn two posts ago is skipped so that the feed never shows the same design back to back.
Put those together and the drift is mechanical. When a layout is skipped, the counter still advances. The number the counter points at and the layout that was actually drawn slip one step apart, and from that moment they never meet again: the counter says “01”, the skip rule says “01 was two posts ago”, the walk moves to the next layout in the pool, which is 02, and 02 always works. Next post, same thing. The escape hatch became the default.
The run log from the morning we found it shows the failure in one line each for two sites: archetype 01 → 03 (same design must not repeat) on istambul.com and archetype 05 → 07 on istanbulhamam.com. In both cases the layout whose turn it was would have worked — there was no shortage of material. The counter was simply pointing at a number that had been drawn two posts earlier.
What changed in the engine?
The order is no longer computed from a counter. It is computed from the record: the next post’s layout is the one after the layout that was actually drawn last. That single change removes the drift by construction. The “not twice in a row” rule can never fire, because the next layout is by definition different from the last one. If a layout still cannot be drawn and the post falls back to 02, the cursor continues from the skipped layout’s slot, not from 02’s — so a fallback at 04 is followed by 05, and the cycle stays intact.
The record itself also got more honest. Before the fix, the engine could shift a candidate layout while searching for a frame that fits the main box, and that shift overwrote the slot number the audit relied on — which is part of why the audit saw zero skips. Every shift is now written down with its reason. The change is covered by 40 unit tests; one of them builds a twenty-post sequence and checks that 02 comes out exactly twice, both times because it was its turn.
Each site runs its own cursor from its own queue. On the morning of 29 September the record read: istambul.com last drew 03, so 04 is next; istanbulhamam.com last drew 07, so 08 is next. The fix went in on the evening of 28 September and that day’s posts had already gone out under the old code, so the first posts published under the new cursor are the ones from 29 September onward. We will report what they look like once there are enough of them to count.
What the cursor does not fix
Order is one problem; supply is another. The four layouts that were starved need more frames than a typical article provides — 04 wants six, 10 five, 06 four, 08 three — and most of those frames have to be portrait or tall enough to fill a 1080×1350 canvas. Our libraries are short of exactly that kind of frame: 49 portrait images out of 358 on istambul.com, 10 out of 122 on istanbulhamam.com. The new cursor guarantees that 04 gets its turn; it does not guarantee that 04 can be drawn when the turn comes. On istanbulhamam.com’s ten measured posts, layouts 04, 08 and 10 had never appeared at all.
We have deliberately not changed anything about supply yet. The reason field now recorded on every post means that in a week we can answer “why did 04 fall through” from the record rather than from a guess. The options on the table all cost something — loosening the full-page requirement for carousel slides, allowing two or three generated images per carousel instead of one at roughly $0.25–0.50 more per post, or carrying a skipped layout forward as a debt to be tried first next time — and we would rather choose with a week of data than without.
What this means if Postiada publishes for you
Three things. First, “varied” is something we measure, not something we assume: the morning audit now reports the distribution of layouts and the share of posts that fell back to 02, per site. Second, every fallback is written down in the post record with its reason, so “why did this post use the fallback layout” is answered from the record, not from memory. Third, the rotation is per site — your feed’s cycle is not affected by anyone else’s queue; what the product publishes for you follows the same ten layouts in the same order. If you want to see the ten layouts on a real account before you start, the same ten are live on @istambulguide; how the first week runs is described step by step.
Frequently asked questions
What are the ten layouts?
Magazine cover, accent block, map frame, grid collage, quote, comparison, colour field, index, rules card and polaroid. Five are single images, five are three-frame carousels; the order alternates single, carousel, single, carousel. They were derived from the account’s own best-performing posts, not invented.
Why is 02 the fallback and not something else?
Because it is the only layout that works on every topic with a single photograph. Every other layout needs either several frames or a specific kind of content — two options to compare, three rules, a quote.
Does posting more often change the order?
No. The order depends only on what was drawn last, never on the date, the week or the posting frequency. Posting five times a week instead of three completes the cycle in about two weeks instead of about three; the sequence is the same.
Can I pin a layout to a topic?
Not in the current version. The rotation is deliberately blind to the topic so that the feed stays varied; the topic decides the words and the photographs, the rotation decides the frame.
