diff --git a/pwnagotchi/defaults.yml b/pwnagotchi/defaults.yml
index 0d7f9f7..688b416 100644
--- a/pwnagotchi/defaults.yml
+++ b/pwnagotchi/defaults.yml
@@ -28,6 +28,7 @@ main:
         auto-backup:
             enabled: false
             interval: 1 # every day
+            max_tries: 0 # 0=infinity
             files:
                 - /root/brain.nn
                 - /root/brain.json
diff --git a/pwnagotchi/plugins/default/auto-backup.py b/pwnagotchi/plugins/default/auto-backup.py
index 9b15efc..a033e05 100644
--- a/pwnagotchi/plugins/default/auto-backup.py
+++ b/pwnagotchi/plugins/default/auto-backup.py
@@ -13,20 +13,14 @@ class AutoBackup(plugins.Plugin):
 
     def __init__(self):
         self.ready = False
+        self.tries = 0
         self.status = StatusFile('/root/.auto-backup')
 
     def on_loaded(self):
-        if 'files' not in self.options or ('files' in self.options and self.options['files'] is None):
-            logging.error("AUTO-BACKUP: No files to backup.")
-            return
-
-        if 'interval' not in self.options or ('interval' in self.options and self.options['interval'] is None):
-            logging.error("AUTO-BACKUP: Interval is not set.")
-            return
-
-        if 'commands' not in self.options or ('commands' in self.options and self.options['commands'] is None):
-            logging.error("AUTO-BACKUP: No commands given.")
-            return
+        for opt in ['files', 'interval', 'commands', 'max_tries']:
+            if opt not in self.options or (opt in self.options and self.options[opt] is None):
+                logging.error(f"AUTO-BACKUP: Option {opt} is not set.")
+                return
 
         self.ready = True
         logging.info("AUTO-BACKUP: Successfully loaded.")
@@ -35,6 +29,9 @@ class AutoBackup(plugins.Plugin):
         if not self.ready:
             return
 
+        if self.options['max_tries'] and self.tries >= self.options['max_tries']:
+            return
+
         if self.status.newer_then_days(self.options['interval']):
             return
 
@@ -62,6 +59,7 @@ class AutoBackup(plugins.Plugin):
             display.update()
             self.status.update()
         except OSError as os_e:
+            self.tries += 1
             logging.info(f"AUTO-BACKUP: Error: {os_e}")
             display.set('status', 'Backup failed!')
             display.update()