saltyfireball365 downloadsDownload all remote images in the current note and save them locally to your vault's attachment folder, rewriting URLs to point to the local copies.
An Obsidian plugin that downloads remote/external images and saves them locally to your vault. After downloading, every URL is rewritten to point to the local copy.
Works on both desktop and mobile.
attachments/games/re/game1/).<img src="https://raw.githubusercontent.com/saltyfireball/obsidian-save-as-local-images/HEAD/url">![[url]][](url) are collapsed to plain images after rewrite when the link and image point to the same URL.cover: https://example.com/cover.png) are also downloaded and rewritten.<...> so Obsidian's link resolver handles them correctly (no %2C/%20 over-encoding).Content-Type header, falling back to the URL extension.Ctrl/Cmd + P)..md file under that folder (recursively), downloads remote images, rewrites the URLs, and shows a summary notice when done.In both cases the plugin will:
If your vault's attachment folder is set to attachments and you run the command on a note at games/re/game1.md, the images will be saved to:
attachments/games/re/game1/
abc123def456.png
ghi789jkl012.jpg
...
| Pattern | Example |
|---|---|
| Markdown |  |
| HTML | <img src="https://example.com/img.png"> |
| Wiki embed | ![[https://example.com/img.png]] |
| Linked image | [](https://.../img.png) |
| Frontmatter URL | cover: https://example.com/cover.png |
Supported file types: PNG, JPG/JPEG, GIF, BMP, SVG, WebP, ICO, TIFF, AVIF.
This plugin is available in the official Obsidian community plugin directory. Install it from Settings > Community plugins > Browse and search for "Save as Local Images" or "Save as Local Images by saltyfireball".
Community plugin page: https://community.obsidian.md/plugins/sfb-save-as-local-images
Browse all of my published Obsidian plugins on my profile: https://community.obsidian.md/users/saltyfireball