How to monitor multiple URLs at once with Distill.io
Import a list of webpages into Distill.io with CSV, manage monitors in the Watchlist, and choose local or cloud checks for each group.
To monitor multiple URLs at once with Distill.io, put each webpage in a CSV row with a monitor Name and URL, then import that file through Distill’s monitor import flow. Use JSON instead if you need to retain fuller monitor configuration, such as selectors, conditions, schedules, and settings. After import, review and manage the monitors in the Watchlist. Distill’s documented bulk import flow creates multiple monitors; it does not turn them into one combined monitor.
1. Prepare a CSV of URLs
Make one row for each page you want to check. The documented required columns are Name and URL. Give each monitor a useful name so it is easy to recognize in the Watchlist. Distill’s import guide also describes optional label and content type fields.
Name,URL
Product pricing,https://example.com/pricing
Status page,https://status.example.com/
Documentation release notes,https://docs.example.com/releases
Save the file as a comma-separated CSV. Keep each URL complete, including https://. If a name or other field contains a comma, enclose that field in double quotes according to normal CSV conventions.
CSV or JSON?
| Format | Best for | What it carries |
|---|---|---|
| CSV | Quickly creating monitors from a list of pages | Basic monitor data, including name and URL |
| JSON | Exporting and importing configured monitors | More complete configuration, including selectors, conditions, schedules, and settings |
Choose CSV for a new, straightforward URL list. Choose JSON when you are moving existing monitors and want to preserve their richer configuration. See Distill’s CSV and JSON import/export guide for the current import details.
2. Import the file into Distill
- Open Distill’s monitor import flow in the web app or supported extension.
- Select the CSV file you prepared. If you exported configured monitors, select the JSON file instead.
- Follow the import prompts and confirm the entries.
- Open the Watchlist and verify the imported names and URLs. Open a few monitors to confirm that each page is the one you intended to track.
Distill documents its web app and browser extensions for Chrome, Firefox, Edge, and Opera. The exact controls may vary by platform; consult the supported platforms documentation if you need to choose an interface.
3. Manage the imported monitors together
The Watchlist is where Distill collects monitors. You can select multiple entries and apply available bulk actions. For example, Distill documents batch changes to monitor configuration and device settings, which is useful when a group of pages should share the same behavior.
- Open the Watchlist and locate the imported entries.
- Select the monitors that should receive the same change.
- Choose the relevant bulk action and review its effect before applying it.
- Reopen representative monitors to verify their settings and captured content.
Keep groups aligned with how you intend to check them: a set of pages that needs the same schedule or configuration is easier to manage together. Use individual monitor settings when pages require different selectors, conditions, or timing. Distill’s Watchlist guide explains the list and its selection actions.
4. Choose local or cloud checks
Each monitor needs a device on which its checks run. Local monitors run in your browser or on your computer, so that device must be running for checks to happen. Cloud monitors run on Distill’s servers and can continue checking while your device is off.
| Check type | Where checks run | Does your device need to be on? | Choose it when |
|---|---|---|---|
| Local | Your browser or computer | Yes | You want browser-based checks and can keep the device available |
| Cloud | Distill’s servers | No | You want checks to continue independently of your device |
Decide based on availability, then use the monitor configuration or documented batch device changes to apply the choice to the relevant monitors. For more detail, see Distill’s local versus cloud monitor guide and its configuration and advanced options guide.
5. Handle pages that load slowly or change dynamically
A monitor may need an extraction delay when the target page adds its content after the initial page load. Distill’s configuration documentation includes extraction delay among the advanced options. Increase the delay for the affected monitor, then inspect the captured content to ensure the target section has appeared. Avoid applying a larger delay to every monitor unless the whole group needs it, since that can make checks take longer.
For pages where only a specific region matters, review the monitor’s selector and condition configuration rather than relying on a broad page capture. JSON import is useful when you need to preserve such settings across an export and re-import.
6. Troubleshooting
| Problem | Likely cause | What to do |
|---|---|---|
| The import fails or entries are missing | The CSV structure or required columns do not match the import format | Check that the header includes Name and URL, and that every intended monitor has a row with a complete URL. Refer to the official import guide. |
| A monitor opens the wrong page | A URL was mistyped, truncated, or assigned to the wrong row | Compare the Watchlist entry with the source CSV, correct the URL, and reopen the monitor. |
| A page’s expected content is absent | The page may render content after its initial load | Adjust the extraction delay in that monitor’s configuration and inspect another capture. |
| Local checks stop when you close your computer | Local monitors depend on your browser or computer running | Use cloud checks for monitors that need to run while your device is off. |
| A bulk change affected an unintended monitor | More entries were selected than intended | Review the selection before applying bulk actions; then inspect the affected monitors and correct their configuration or device setting. |
| Imported monitors lack selectors or schedules | CSV is intended for basic monitor data | Use JSON when transferring fuller configurations, including selectors, conditions, schedules, and settings. |
7. Keep the workflow reliable and efficient
- Validate the input list: check for duplicate rows, incomplete URLs, and names that are hard to distinguish before importing.
- Use JSON for configured monitors: it is the appropriate documented format when you need to carry selectors, conditions, schedules, and settings.
- Group bulk edits deliberately: select only monitors that should receive the same configuration or device change.
- Set delays narrowly: late-rendering pages may need more extraction time; applying that to unaffected pages adds avoidable waiting.
- Match check location to availability: local checks depend on your device, while cloud checks run independently on Distill’s servers.
Distill’s documentation describes where local and cloud checks run and how monitor settings can be changed. It does not provide a universal timing benchmark or a cost estimate for a particular URL list in the material referenced here; check your account and plan details for costs that apply to your setup.
Or skip the browser setup
If your goal is to capture how many pages look at a point in time, ScreenshotNeo provides a website screenshot API and MCP server. One GET request returns an image or PDF, and its API documentation describes the available options.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get(
"https://api.screenshotneo.com/v1/shot",
params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
timeout=90,
)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
ScreenshotNeo removes cookie banners, popups, and chat widgets before the shot. Bot checks, blank pages, and failed loads are never billed. An MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card, and paid plans start at $5 for 3,000. These are captures, not ongoing change monitors like Distill’s Watchlist.
Sign up for 1,000 free screenshots a month, with no card.
FAQ
Can I add many URLs without importing a file?
The documented bulk URL import path is CSV import. Prepare one row per monitor and import the list through Distill’s monitor import flow.
Can all imported URLs use the same settings?
They can be selected together for documented bulk configuration and device changes. Pages that need different selectors, conditions, or timing should retain their own settings.
Will local monitors run when my computer is off?
No. Local monitors run on your browser or computer. Choose cloud monitors when checks need to continue while your device is off.
Should I use Distill or ScreenshotNeo?
Use Distill when you need to monitor pages for changes over time. Use ScreenshotNeo when you need screenshot or PDF captures through an API or an AI agent workflow.


