Anki Time Warp

AnkiWeb addon 1779617428

Reshapes Anki review schedules by shifting, stretching, or capping due dates, with filtering, simulation previews, and single-step undo.
AI-generated summary; may contain mistakes.

scheduling

Open on AnkiWeb GitHub Forum topic Ask about alternatives

AnkiWeb

Rating
2 (πŸ‘ 2 Β· πŸ‘Ž 0)
Updated
2026-09-16
Anki versions
25.02.1~
Description language
en

Maintenance

active

  • Last update or commit was 15 days before the snapshot (2026-09-16).
  • The repository has 1 test files.

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
24.0625.02.1+2026-09-16
History across monthly snapshots

Loading…

Similar addons

AnkiMaxer

Runs a local server helping a browser extension tag, unsuspend, and organize matched Anki cards into filtered Incorrects and Marked decks, with configurable handling of reviewed cards.

sync-integrationschedulingfiltered-decks

Rating 2 πŸ‘ 1 Β· πŸ‘Ž 1 Anki 2.1.66~ Updated 2026-09-12

README

<div align="center">

<img src="logo.png" alt="Anki Time Warp" width="140">

Anki Time Warp

Reshape your Anki review schedule β€” see exactly what changes before it happens.

Anki Time Warp

<sub>Same snow, better spread.</sub>

</div>


What it does

Anki's scheduler optimises for retention, not for your calendar. Time Warp lets you reshape the review load itself: spread a pile-up over more days, push everything past a holiday, or cap how many cards a single day is allowed to hold β€” with a live chart of the result before anything touches your collection.

Every transformation is card-preserving: no card is ever dropped or duplicated, only moved.


Features

Shift β€” pause a deck, pick it up where you left off

Move the whole schedule by up to Β±365 days. Every card keeps its position relative to the others, so a deck you paused for five months comes back exactly as it was, just five months later. This is the difference to Anki's built-in Set Due Date, which scatters cards randomly and destroys their order.

Cards that are months overdue are picked up as well β€” the past horizon grows to fit the oldest card in scope.

Stretch β€” flatten or compress

The Stretch slider works on the whole review load at once rather than scaling each card's interval individually, so the result is smooth instead of the sawtooth pattern per-card scaling produces.

  • Positive values blend the next 90 days toward an even daily load. Peaks are levelled, valleys filled; nothing moves beyond the 90-day window.
  • Negative values compress the schedule toward today.

Cap the daily load

Max cards/day puts a ceiling on any single day; the overflow spills forward into the following days rather than being discarded.

  • -1 β€” off, the stretch slider controls the distribution
  • 0 β€” auto, levels to the average over the horizon
  • >0 β€” a manual ceiling

Sweep up the backlog

Collapse overdues to T0 takes everything that is already overdue and folds it into today instead of leaving it stranded in the past.

Target exactly the cards you mean

Pick a single deck or all of them, then narrow further by tags. Suspended cards are always excluded. Counters show how many cards are in scope and how many of them are actually in review.

See it before you commit

The chart shows the whole simulated timeline β€” red bars for overdue, blue for scheduled, plus a dashed line when a daily cap is active. The preview updates as you drag, and nothing is written until you press Apply Changes. Apply always re-simulates from the current settings, so what you confirm is what gets written.

One undo step

Due dates are rewritten in place in a single undo entry (Edit β†’ Undo Time Warp). Only the due date changes; intervals, ease and review history stay as they are.


Use cases

  • Pausing a deck β€” note the date you stop; when you return, shift by the number of days you were away and carry on as if nothing happened
  • Holiday β€” shift the load past the days you will not be studying
  • Backlog recovery β€” collapse the overdue pile into today and cap the daily hit
  • Sustainable pace β€” flatten a lumpy month into an even one

Screenshot

Anki Time Warp interface


Installation

From AnkiWeb β€” search the add-on catalogue for Anki Time Warp.

Manually

  1. Download or clone this repository
  2. Copy the files into a folder named anki_time_warp inside your Anki addons21 directory
  3. Restart Anki

The add-on appears under Tools β†’ Anki Time Warp.


Compatibility

  • Anki 2.1.55 or newer
  • Qt6 / PyQt6 (bundled with recent Anki builds)
  • Developed and tested on Linux; Windows and macOS are expected to work

Chart.js ships with the add-on and is inlined at runtime β€” Time Warp makes no network requests.


Safety

Changes are written inside a single custom undo entry, so Edit β†’ Undo Time Warp reverts the whole operation. As with any add-on that edits scheduling data, take a backup before a large transformation, and note that an undo is only available until you sync.

Suspended and buried cards, cards in filtered decks, new cards and cards in intraday learning are never touched.

A note on schedulers: with FSRS, moving a due date has no effect on the next interval (FSRS measures elapsed time from the last actual review). With the SM-2 scheduler, Anki grants an "overdue bonus" based on how late a card is answered; shifting a card later forfeits that bonus (conservative), pulling it earlier makes the next interval slightly larger than the elapsed time would justify. Use positive stretch with that in mind if you are not on FSRS.

There is a standalone test suite (python3 tests/test_core.py) that checks card conservation across a grid of stretch / shift / cap combinations.


License

MIT β€” free for personal and academic use.

Contact

deep_intervention@posteo.de