AutoFill memory limits

Unlike the main KeePassium app, AutoFill has very limited memory to operate with — about 120 MB.

If your database is quite large, or uses the memory-hard Argon2 algorithm, AutoFill may not have enough memory to decrypt and load the data. In this case, you will likely see a “Not enough memory to continue” message:

Screenshot of the memory overflow message in KeePassium AutoFill.
Screenshot: memory overflow message in AutoFill.

Free up some memory

First of all, the system can indeed be low on memory (RAM, not storage). This can happen if there is a memory-hungry app or game running in background. In this case, AutoFill might have even less than 120 MB to begin with.

  • For devices with a Home button (video guide)
    • Press and hold the Power button on your device until you see the “Slide to power off” screen.
    • Release the Power button
    • Press and hold the Home button until you see the home screen again.
  • For devices without a Home button (video guide)
    • Open system Settings — General — Accessibility — Assistive Touch
    • Turn on AssistiveTouch
    • Return to General and press Shut Down; the “Slide to power off” screen will appear
    • Long-press the virtual Home button until you see the home screen again.

Now that the RAM has been flushed, when you return to one of the previously opened apps, you will notice they reload.

Tweak database settings

If cleaning the memory did not help, it is time to look at your database settings. The Argon2 algorithm, used by some databases, is designed to be a memory-heavy procedure. Depending on its parameters, Argon2 may request hundreds of MB — way more than system’s limit for AutoFill.

You can change your database encryption settings to use less memory, say 32 MB max. You can change this in desktop KeePass: File — Database Settings — Security — Key transformation. To compensate the decrease in memory complexity, you can increase the number of algorithm iterations.

Reduce database size

Finally, it can be that the database file is too large to fit in memory.

By default, KeePass apps compress database content before encryption. Thus, even if the file is relatively small (5 MB or more) it will need much more memory to load.

To make the database file smaller and thus quicker to load:

  • Run database maintenance to remove obsolete data. This can be done in KeePass: Tools — Database Tools — Database Maintenance.
  • Move some attachments to a separate database.