Heads-up
If your vault is private and you'd rather not put screenshots on a public URL, stick with embedded attachments. swiftimg is best for notes you eventually publish.
Step by step
1. Upload the screenshot
Drop it at /upload, or use the swiftimg CLI to upload from a script or hotkey.
CLI swiftimg upload screenshot.png2. Paste the Markdown into your note
Use the standard Markdown image syntax — Obsidian inlines it like any image embed.
Markdown 3. Publish without surprises
When you publish notes (Obsidian Publish, a static site, or pasting elsewhere), the same Markdown keeps working — no broken vault-relative paths.
Obsidian — FAQ
Doesn't Obsidian already handle attachments?
It does — by stashing files in the vault. That's great for fully offline use, but inflates sync size and breaks when you copy notes outside the vault. External hosting is the trade-off.
Can I automate the upload from a hotkey?
Yes — the @swiftimg/cli package gives you `swiftimg upload <file>` that prints the URL, so an Alfred / Raycast / shell hotkey can upload and copy in one step.
Will the images load offline?
No — externally-hosted images need a network. For fully offline notes, keep attachments in the vault.
See also
Image hosting for GitHub README
Upload screenshots, diagrams, and GIFs and embed them in a GitHub README with a Markdown snippet. No account needed; the direct URL is permanent and globally cached.
Image hosting for Stack Overflow
Upload screenshots and diagrams to swiftimg and paste a Markdown image link into a Stack Overflow question or answer. Permanent URLs, no account required.
Image hosting for Docusaurus
Host Docusaurus screenshots and diagrams on swiftimg. Keeps the docs repo lean, gives you permanent URLs, and adds on-the-fly resize.
swiftimg vs ImgBB
An ImgBB alternative with faster delivery, automatic WebP, and a real developer API.
Ready to host your Obsidian images?
Start free, then unlock the full API, transforms, signed URLs, and a custom domain on the Developer plan.