This article is for publishers. The Substack import brings your existing post archive to Steady – including images, embedded links, footnotes and paywall settings. All you do is upload the ZIP export from Substack.
Note: This feature is being rolled out gradually. If you don’t see the “Import posts” menu entry, drop us a line at support@steadyhq.com and we’ll enable it for you.
Step 1: Export your archive from Substack
In your Substack settings, download the export of your publication. You get a ZIP file. Do not unzip it – Steady needs exactly that ZIP file.
Step 2: Start the import
In your Steady backend, open Settings → Import posts and click add.
Upload the ZIP file.
Decide whether a paywall should be added after the first paragraph, and select the plans that get access.
Choose whether to keep the original publish status (default – including the original date) or to import everything as drafts.
In the next step, confirm that you own the content.
Step 3: Select and review posts
After parsing, you see a table of all posts found (newest first). There you can:
select and deselect individual posts (or all at once),
assign a topic per post and override the paywall setting,
open a preview of each post before importing.
Paywall settings are pre-filled sensibly per post: anything that was paid-subscriber-only on Substack gets a paywall automatically; free posts stay open.
Step 4: Import
Click Import selected. The import runs in the background and the progress updates automatically – no need to reload. Afterwards you find the posts in your regular post overview.
Good to know
Podcast episodes are not imported. Audio embedded inside a post body does come along. For podcast setup, see “Publishing and hosting a podcast on Steady”.
Re-running an import does not create duplicates – it updates the previously imported posts.
Images and audio files are moved to Steady’s own storage, so your posts no longer depend on Substack.
YouTube and Spotify embeds as well as footnotes are converted; Substack-specific blocks (subscribe buttons, app banners) are stripped.
Reset import deletes the imported posts again so you can start over.
