Database Clean-Up

The what, why, and how of Marvin's database clean-up

Mark avatar
Written by Mark
Updated over a week ago

Marvin stores its tasks a bit differently than many other apps in order to let you use Marvin offline. The way Marvin stores tasks also is a big reason why we are able to quickly develop new features with such a small development team. But there are certain disadvantages, mainly that Marvin can start to slow down for users with many tasks.

Database Clean-Up permanently archives old completed tasks, time blocks, events, day notes, etc. so that Marvin can run faster. You'll still be able to view these items in Archive Mode, but otherwise they won't be synced to your device at all. This is especially helpful on mobile devices!

Who will benefit from a database clean-up?

When you start a database clean-up, Marvin will tell you how many items will be archived. The bigger the number, the more benefit you'll get from the clean-up. You can expect big performance improvements if:

  • You have a lot of completed tasks/projects

  • You have many more completed tasks/projects than open tasks/projects

  • You have a lot of events/time blocks in the past

  • You often use day notes and have been using Marvin for a long time

Running database clean-up

Database Clean-Up becomes available once you have used Marvin for 6 weeks or more (since it archives items older than 6 weeks old). It might take a while, depending on how many items you have. So consider running the clean-up over lunch or overnight.

Go to ☰→Settings and you will find Database Clean-Up at the end of the list:

You will be prompted to enter archive mode. Be sure to make a backup, and follow the instructions.

After the clean-up

You should already experience performance improvements once you have finish the database clean-up and click to exit archive mode! If you continue to experience issues, on web/desktop: try clearing the application storage and doing a fresh sync; on mobile: try deleting the app (including application settings/data) and doing a fresh sync.

Did this answer your question?