Where Does SQLMap Save Output and Logs?
SQLMap writes loot under ~/.local/share/sqlmap/output on Linux, with older installs using ~/.sqlmap and Windows its own path.
Last updated
Every SQLMap run ends with a line telling you where the loot went: a per target folder under an output directory. Dumped tables become CSV files there, and the session database sits alongside them for resuming.
The base directory moved to follow platform conventions, which strands old guides. Current builds prefer the XDG data home, while older ones used a dot folder directly in home. SQLMap still honors the old folder when it exists.
Where SQLMap stores this, by platform
~/.local/share/sqlmap/output
Current default, one subfolder per target host. Legacy installs used ~/.sqlmap/output, which still wins if present. On Kali that means /home/kali/.local/share/sqlmap/output. Override per run with --output-dir.
%LOCALAPPDATA%\sqlmap\output
Same per target layout under local app data. Session files live beside the dumps, so rerunning against the same target resumes instead of starting over.
Frequently asked questions
where are my sqlmap dumped tables
Under the output folder in a subfolder named for the target, then dump/<database>/<table>.csv. The final INFO line of your run prints the exact path, so scroll up if you missed it.
why is there both .sqlmap and .local/share/sqlmap on my machine
The project migrated to XDG directories and kept the old path as a legacy fallback. If ~/.sqlmap exists it takes precedence. Consolidate by moving its contents into ~/.local/share/sqlmap and deleting the old folder.
how do i change the sqlmap output directory
Pass --output-dir=/your/path on the command line. There is also a SQLMAP_OUTPUTDIR style override some wrappers honor, but the flag works everywhere.
Notice an outdated path? Let us know.