← All notes
Margins · Research
The spoiler lock I thought I’d invented already existed.
How StoryGraph, Fable and readers’ public feature requests moved Margins from page locks to chapter locks.


Pooja Dodia
·
19 Apr 2026
·
5 min read

Sources
StoryGraph public roadmap, Fable App Store listing and Goodreads spoiler tags. Checked April 2026. No interviews were run for this concept.
01
The idea I thought was mine
I read a lot of thrillers, where one stray message can ruin an ending. Buddy reads make it worse: one friend races ahead and has to stay quiet, another falls behind and avoids the chat. My first idea for Margins was simple: lock friends’ notes until you catch up.
Before designing anything, I checked what readers already use.
02
What the apps already do
1
StoryGraph
Already locks buddy-read notes by your logged percentage or time.
2
Fable
Uses spoiler-free chapter rooms.
3
Goodreads
Relies on manual spoiler tags.
Locking spoilers wasn’t new. None of them say how readers on different formats line up.
“Locking spoilers isn’t new. Lining up formats is.”
03
What readers ask for in public
StoryGraph’s public roadmap showed readers asking for the same fixes since 2022.
One reader found the same passage at 67% in one edition and 79% in another. Pages and percentages don’t survive a change of edition or format. Chapters do.
Add visible comments to buddy reads
14
votes
Unlock a comment regardless of progress
8
votes
Let audiobook users use chapter numbers
5
votes
04
What it changed in the design
Version one locked notes by page number. Page 120 in a paperback is a different moment on an ebook at 31%, or in hours of audio. So version two changed three things.
✓
Notes are pinned to chapters
Paperback, ebook and audio readers all line up.
✓
Locked notes show their chapter
You see a note is waiting and where, never what it says.
✓
Peek is a deliberate choice
Rereaders can open a note anyway, without faking their progress.
Check the competition before falling for an idea. The real problem was hiding in other readers’ feature requests. Next, I want to test Margins with real buddy-read groups who read in different formats.

