AutoFill memory limits

Overview

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:

Memory overflow message in KeePassium AutoFill
Memory overflow message in KeePassium AutoFill

Solutions

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 → GeneralAccessibilityAssistive Touch
  • Turn on Assistive Touch
  • 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. To do so, open your database in KeePassium, tap the Shield button at the bottom of the screen → Encryption SettingsReset to Recommended Settings.

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: ToolsDatabase ToolsDatabase Maintenance.
  • Convert the database to kdbx4 format which stores attachments more efficiently
    • KeePass: FileDatabase SettingsSecurityDatabase encryption algorithm → select “ChaCha20”
    • KeePassXC: DatabaseDatabase settingsSecurityEncryption settingsDatabase format → select “KDBX 4”
  • As a last resort, move some attachments to a separate database.