diff --git a/archivebox/cli/archivebox_add.py b/archivebox/cli/archivebox_add.py
index d3c89256..ca469fa8 100644
--- a/archivebox/cli/archivebox_add.py
+++ b/archivebox/cli/archivebox_add.py
@@ -76,7 +76,6 @@ def main(args: Optional[List[str]]=None, stdin: Optional[IO]=None, pwd: Optional
     command = parser.parse_args(args or ())
     urls = command.urls
     stdin_urls = accept_stdin(stdin)
-    extractors = command.extract.split(",") if command.extract else None
     if (stdin_urls and urls) or (not stdin and not urls):
         stderr(
             '[X] You must pass URLs/paths to add via stdin or CLI arguments.\n',
@@ -91,7 +90,7 @@ def main(args: Optional[List[str]]=None, stdin: Optional[IO]=None, pwd: Optional
         overwrite=command.overwrite,
         init=command.init,
         out_dir=pwd or OUTPUT_DIR,
-        extractors = extractors,
+        extractors = command.extract,
     )
 
 
diff --git a/archivebox/main.py b/archivebox/main.py
index ed615daa..e27dff96 100644
--- a/archivebox/main.py
+++ b/archivebox/main.py
@@ -526,13 +526,12 @@ def add(urls: Union[str, List[str]],
         overwrite: bool=False,
         init: bool=False,
         out_dir: Path=OUTPUT_DIR,
-        extractors: list=None) -> List[Link]:
+        extractors: str="") -> List[Link]:
     """Add a new URL or list of URLs to your archive"""
 
     assert depth in (0, 1), 'Depth must be 0 or 1 (depth >1 is not supported yet)'
 
-    if extractors is None:
-        extractors = []
+    extractors = extractors.split(",") if extractors else []
 
     if init:
         run_subcommand('init', stdin=None, pwd=out_dir)