Shutterstock Bulk Download Manager
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
This productivity tool revolutionizes Shutterstock image management by enabling bulk downloads across multiple images simultaneously. It scans your current Shutterstock gallery, collection, or search results page, extracting all visible images including their titles, IDs, keywords, and available resolution options. You can then filter images by title, keyword, or resolution, select individual images or use the select-all-filtered feature, and download them all with a single click using your preferred resolution (web, HD, 4K, or vector). The script displays thumbnails for visual reference and triggers Shutterstock's native download workflow through its own UI controls with proper event propagation.
WHERE IT RUNS
This script operates on Shutterstock image pages at *://*.shutterstock.com/g/* (galleries), *://*.shutterstock.com/collections/* (collections), *://*.shutterstock.com/images, and *://*.shutterstock.com/photos (search results). It integrates as a floating panel on the left side of your browser window when you navigate to any Shutterstock image listing page. The tool works with Shutterstock's dynamic React-based interface, detecting images regardless of how they're rendered on the page and adapting to Shutterstock's frequent UI changes.
HOW TO USE
Navigate to any Shutterstock gallery, collection, or search results page.
The panel appears automatically on the left side of the screen.
Click "Refresh" to load all visible images from the current page.
Use the filter input to search images by title.
Use the resolution filter to show only images with specific resolutions.
Review the thumbnails and titles displayed in the panel.
Check the boxes next to images you want to download, or use "Select All Filtered".
Select your preferred resolution: Web, HD, 4K, or Vector.
Click "Download Selected Images" to begin the bulk download process.
The script will open each image's download modal and trigger the download through Shutterstock's interface.
UI EVENT DISPATCHING AND DOWNLOAD WORKFLOW
The tool succeeds because it operates directly within Shutterstock's own JavaScript context, bypassing cross-origin restrictions that prevent external extensions from accessing Shutterstock's internal React state. It uses React event propagation by dispatching both "input" and "change" events with proper bubbling flags (bubbles: true), ensuring Shutterstock's virtual DOM reconciles the resolution selection correctly and triggers the download. The script navigates Shutterstock's download interface by finding the download button on each image, clicking it to open the modal, selecting the appropriate resolution from the dropdown, and then clicking the final download button. The implementation uses multiple selector fallbacks including aria-label attributes, data-testid attributes, and class-based selectors to handle Shutterstock's dynamic interface. The concurrency cap of 4 simultaneous operations with 300ms spacing prevents Shutterstock's rate limiting from blocking requests while maintaining efficient throughput. Resolution preferences are stored locally using GM_setValue, enabling consistent preferences across sessions.
THE PANEL
The floating panel is draggable to any position on screen and remembers its location between sessions using GM_setValue. It automatically collapses to a small icon when minimized and expands on hover or click. The panel is resizable to suit your workspace needs and can be dismissed with the Escape key. It snaps to the left edge by default but can be positioned anywhere, with position persisted across browsing sessions for consistent placement. All settings persist automatically across sessions, including your preferred resolution and filter settings.
PLEASE NOTE
This script requires the free BotGentz extension to run user scripts on Shutterstock. Shutterstock frequently updates its interface, which may temporarily break functionality; updates are released regularly to maintain compatibility. The script only reads visible image information from the page and does not store or transmit any data externally. All processing occurs locally in your browser. Downloads are initiated through Shutterstock's standard interface and require valid licensing or subscription. The script processes images in batches of 4 to prevent rate limiting. Higher resolutions (4K, vector) may require additional licensing or larger file sizes. Ensure you have the appropriate rights for each image before downloading. The vector option is only available for vector assets and will appear in the dropdown when applicable.