12 June 2026 · Book Assembly Team · 4 min read
We've added three new features that build on top of the Reading Stats rebuild from last time. Each one takes your reading data and does something useful with it.
This is the one we're most excited about. A Spotify Wrapped-style story flow showing your year in books, available at Dashboard, then Stats, then the Cover to Cover card.
Nine cards in sequence. Your headline number (books finished, with a row of their covers in reading order). What you read (top genres and moods). Your most-read author, with the books by them. A "did you know" hook pulling out something interesting about your year: the page ratio between your longest and shortest book, or how many distinct moods you tagged, or your total page count. Your busiest reading month, with the books you finished in it. Your reading firsts (first finish, longest, first re-read). Your favourite (top-rated book with a star display). And a finale.
Each card has a share button that generates a branded portrait image for your device's share sheet. The image uses the same layout as the on-screen card, with covers where relevant. Send it to Instagram, Messages, wherever you share reading stuff. Older browsers without share-sheet support fall back to downloading the image as a PNG.
Cover to Cover is available for every past year you've logged, including years from imported Goodreads or StoryGraph data. The current year unlocks on December 1st so it doesn't try to summarise a year that isn't finished yet. An entry card on the Reading Stats page shows your available years.
There's now a reading timer on the book detail page for books you're currently reading. Start, pause, resume, stop, discard. A live elapsed counter stays visible as you use the timer. It persists across navigation, page refreshes, and even closing the browser entirely.
When you stop the timer, a small form pre-fills your new page position (or current listening time for audiobooks, pre-filled from the timer duration on the assumption you listened continuously). Confirming a session is usually one tap. You can optionally tag how it felt: Loved, Liked, Mixed, or Slow Going.
If a timer's running on one book and you open a different book, you'll see a warm amber banner: "Timer running on another book" with a one-tap link back. No more hunting for which book has the active timer.
There's also a Log a past session option on the same page for backfilling sessions you tracked elsewhere. Pick a date, enter pages read or minutes listened, set the session length, optionally tag a mood. Past sessions don't move your current position (a session from last week shouldn't jump you forward), they just add to your reading history.
Once you've logged enough sessions, a new Reading Sessions section appears on the stats page. Your pages-per-hour pace over the last 30 days (with an all-time comparison when it differs noticeably), average session length, sessions per week, your longest session, and a breakdown of how long your sessions typically run across five bands.
Sessions automatically tag the time of day they happened, so they feed into the heatmap, the "when you read" hour grid, and the busiest-day insight alongside your manual progress updates.
Annual targets for books, pages, and listening time. Set them under Dashboard, then Preferences, then Goals. The goals page shows your progress as rings. Each ring caps at 100% visually even when you've overshot. The overshoot is shown in the centre text and a celebration line below.
The pace indicator is deliberately patient. It waits until you're a couple of weeks into the year and noticeably off track before telling you whether you're ahead or behind. January 3rd won't tell you you're failing your 52-book goal.
A few extras that make this more than just a number on a page:
Daily nudge (off by default, opt in from the goals settings). Explicit copy that missing a day won't break your streak or affect your annual goal, because the point isn't guilt.
Rest days for streaks. Set how many unread days per week your streak should tolerate. With one rest day, a single day off won't break your run. Set to zero for strict consecutive days, matching how streaks worked before.
Goals widget for the home dashboard, available via widget settings. Compact progress bars with pace text, linking through to the full page.
Backup support. Your goals are included in the export (format v9). Older backups still import cleanly.
A handful of additional charts also landed alongside these features:
Mood vs Rating shows your average rating per mood. Do you rate dark books higher than funny ones? Now you know. Requires at least five books per mood so a single outlier can't dominate.
Genre vs Completion shows which genres you actually finish. Start a lot of literary fiction but only finish 40% of it? That shows up here.
Re-Read Gaps tracks how often you return to books you've read more than once, sorted by most revisited.
Most Surprising Reads picks out books you rated 4+ stars in genres you rarely touch. The unexpected favourites.
All of these expand on tap to show the books behind the numbers, with links through to each one.