HOW IT WORKS

How BedsideLingo decides when a phrase comes back

BedsideLingo uses spaced repetition, powered by an open-source algorithm called FSRS. This page explains what that means and who built the pieces we rely on.

By the BedsideLingo team. Last updated November 8, 2026.

The short version

What spaced repetition is

Memory fades over time, and it fades fastest right after you learn something. Reviewing a phrase just before you would forget it strengthens the memory far more than reviewing it too early or too late.

Spaced repetition turns that into a schedule. Each time you recall a phrase, the next review is pushed further away. Each time you forget it, the gap shrinks again. Over time you spend your practice on the phrases that need it, instead of on the ones you already know.

How FSRS works

FSRS stands for Free Spaced Repetition Scheduler. It models each phrase you practise using three ideas about memory:

After every answer, FSRS updates its estimate for that phrase. A correct answer raises stability, so the next gap is longer. A wrong answer lowers it, so the phrase returns sooner. The scheduler then sets the next review for roughly the moment your chance of remembering falls to a target level. The library BedsideLingo uses aims for about 90 percent by default.

FSRS builds on earlier research. Its authors describe it as springing from MaiMemo’s DHP model, which is a variant of the DSR model (difficulty, stability, retrievability) proposed by Piotr Wozniak.

How BedsideLingo uses it

  1. You practise and answer. Each phrase shows up, you try to recall it, and you say how it went.
  2. Your answer sets the next date. The app passes your answer to FSRS, which returns the next due date. Reviews that are due come first in a practice session.
  3. Progress is kept per phrase and per language. Learning French and learning Spanish keep separate schedules, and so do the two directions of a phrase.
  4. “I’ve learned it” is your call. If you are sure of a phrase, you can mark it learned. The app then checks back after a few months, a gap you can change in Settings.
  5. Bedside playback is separate. Playing a phrase at the bedside never counts as a review and never changes your schedule.
  6. Everything stays on your device. The scheduling runs locally, with no account and no upload.

One limit: BedsideLingo uses FSRS with its default settings and with randomised spacing turned off, so the schedule is predictable. It does not yet tune the settings to your own review history.

Open source and credits

The source code of FSRS and its libraries is public, and anyone may use, study and modify it under the license terms.

We are grateful to everyone who built and maintains these projects. BedsideLingo is not affiliated with or endorsed by them.

ts-fsrs license

ts-fsrs is released under the MIT License:

MIT License

Copyright (c) 2026 Open Spaced Repetition

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Frequently asked questions

What is FSRS?

FSRS stands for Free Spaced Repetition Scheduler. It is an open-source scheduling algorithm that estimates how well you remember each item and picks the next review date accordingly.

Is FSRS open source?

Yes. FSRS is developed in the open by the Open Spaced Repetition community, and the TypeScript library BedsideLingo uses, ts-fsrs, is released under the MIT license, which is a permissive open-source license.

Does BedsideLingo send my reviews anywhere?

No. Scheduling runs on your device. Your reviews, ratings and progress are stored only on your device. See the privacy policy for details.

What do the answer buttons mean?

After you see a phrase, you say how easily you remembered it. In the simple mode the choices are Again and Good. Again means you forgot it, so it comes back soon. Good means you recalled it, so it comes back after a longer gap. The detailed mode adds Hard and Easy.

Does playing a phrase at the bedside change my schedule?

No. Playing a phrase in Bedside never counts as a review. Only your answers during practice affect when a phrase comes back.

Is the schedule personalised to me?

Not yet. BedsideLingo uses the algorithm’s default settings, which are the same for everyone. It does not tune the settings to your own review history.