Substack Bulk Subscriber Export
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Substack Bulk Subscriber Export gives you complete control over your subscriber data. Instead of manually scrolling through pages and copying emails one by one, this tool automatically extracts every visible subscriber from your Substack audience list. It identifies subscriber rows, extracts email addresses and names, and handles pagination by automatically loading more subscribers as you scroll. You can then copy all emails to your clipboard, copy all names, copy the full dataset as tab-separated text, or download everything as a CSV or JSON file. The tool also tracks subscription status (paid/free) and includes it in the export if desired. This turns hours of manual data collection into a single click.
WHERE IT RUNS
This script runs exclusively on the Substack web application in your browser. It activates on subscriber list pages, audience management pages, and dashboard views where subscriber data is displayed. It requires the BotGentz extension to inject and execute the script. The tool does not work on Substack's mobile app or any third-party wrappers — only the web version accessed through a Chromium-based or Firefox browser. It specifically targets pages under *.substack.com, including publication-specific subdomains.
HOW TO USE
After installing the script via BotGentz, navigate to your Substack subscriber or audience list page. The tool automatically detects when you're on a subscriber page and displays a floating panel on the right side. Click "Extract Subscribers" to begin the extraction process. The tool will scan the current page, then automatically scroll and load more subscribers until no more are available. A progress counter shows how many subscribers have been extracted. Once complete, you can copy just the emails to your clipboard (useful for email marketing tools), copy just the names, or copy the full dataset with status information. Click "Download File" to save as CSV (spreadsheet-compatible) or JSON (developer-friendly). The format and whether to include status are saved as preferences. The "Copy All" button copies tab-separated data for easy pasting into spreadsheets.
THE ACTUAL MECHANISM — WHY IT WORKS
Substack's subscriber interface is a React application that dynamically renders subscriber data as you scroll. The subscriber list is paginated via infinite scroll, with new rows appended to the DOM as the user approaches the bottom. This tool identifies subscriber rows by scanning for common class patterns, role attributes, and data attributes that Substack uses to render subscriber information. For each row, it extracts the email address (often the primary identifier) and the subscriber name, which may be in a separate column or element. To handle pagination, the tool programmatically scrolls the subscriber list container to the bottom, then detects when new content loads by comparing the number of extracted subscribers before and after the scroll. It repeats this process until no new subscribers are added, effectively crawling the entire list. The tool also detects "Load More" buttons and clicks them when scrolling alone is insufficient. All extracted data is stored in memory until the user copies or downloads it, with no external transmission.
THE PANEL
The floating panel is fully draggable — click and drag the header to reposition it anywhere on the page. The panel's position is saved per site in localStorage, so it reappears exactly where you left it. Double-click the header to snap the panel to the nearest edge (left or right). A collapse button minimizes the panel to a small tab showing a download emoji, keeping it out of the way while still accessible. The panel auto-detects subscriber pages and can automatically start extraction when you navigate to a subscriber list. Pressing Escape while the panel is focused closes it completely; reopening is done via a small button injected near the page header. All panel interactions are non-blocking — Substack's main UI remains fully responsive during extraction, and the panel updates its status display in real time as subscribers are found.
PLEASE NOTE
This script requires the BotGentz extension (free) to run user scripts on Substack. Substack frequently updates its web interface and component structure; if the tool stops working, check for an updated version within BotGentz's script repository. This tool does not store, transmit, or log any subscriber data — all operations occur locally in your browser with no external network requests. The extracted data is only stored in memory until you copy or download it; closing the panel or navigating away clears the data. For very large subscriber lists (thousands of subscribers), the extraction process may take several minutes — the progress counter updates continuously. The tool respects Substack's rate limiting and includes delays between scroll operations to avoid triggering anti-bot measures. Always verify the extracted count matches your dashboard total, as Substack may have rendering limits or virtual scrolling optimizations that affect extraction. The tool extracts only subscribers visible on the current page after applying any active filters; adjust your filters before extraction to target specific subscriber segments.