# Distill.io Not Working? Common Problems, Fixes, and a Reliable Alternative

Source: PageCrawl.io Blog
URL: https://pagecrawl.io/blog/distill-io-not-working-common-problems-fixes

---

Distill.io is one of the longest-running website change monitors, and for simple pages it does the job. But if you have landed here, something probably broke: notifications stopped arriving, a monitor keeps erroring with SELECTION_EMPTY, or your inbox is full of alerts for changes that never happened.

These problems are common enough that Distill's own public support forum discusses them week after week. Most of them trace back to a handful of root causes: the split between local and cloud monitoring, how errors are classified, and websites that block automated checks.

This guide explains each problem, gives you the fix inside Distill where one exists, and is honest about the cases where the tool itself is the limitation. If you get to the end and decide a different architecture would serve you better, we also cover how to switch to [PageCrawl](https://pagecrawl.io) in a few minutes.

### Why is Distill.io not sending notifications?

The most common causes are a local monitor that stopped running, a condition set that silently blocks every alert, or an exhausted notification quota. Distill only checks local monitors while your browser or desktop app is open, and conditions are combined with AND logic, so one wrong rule can mute everything.

Work through these checks in order:

1. **Local or cloud?** If the monitor runs on a device (browser extension or desktop app), it stops as soon as that device sleeps, the browser closes, or the extension updates. Distill does not warn you when a local monitor goes quiet. Switch critical monitors to cloud checks, or keep the device awake.
2. **Conditions and global conditions.** A condition that evaluates false suppresses the alert even though the change was detected. Global conditions apply to every monitor at once, and a single stale rule can silence your whole watchlist. Review both levels, not just the monitor's own settings.
3. **Hidden global actions.** Notification actions can be configured globally as well as per monitor. Users regularly discover duplicate or missing alerts caused by an action defined in a place they forgot existed.
4. **Quotas.** Distill caps push notifications, SMS, and emails per month depending on the plan. Once the cap is reached, alerts silently stop until the next cycle. False positives and duplicate pushes can burn through the cap quickly.
5. **Unsubscribed email.** If an alert email was ever marked as spam or unsubscribed, Distill stops emailing that address and support has to reactivate it.

If everything looks correct and alerts still do not arrive, the detection itself may be failing. That is usually a SELECTION_EMPTY situation, covered next.

### What does the SELECTION_EMPTY error mean in Distill?

SELECTION_EMPTY means the CSS or XPath selector for your monitor matched nothing on the page during a check. Distill records it as an error rather than a change, which has an important side effect: if the element you were watching genuinely disappeared, you get an error log entry instead of an alert.

There are three common triggers:

- **The element really is gone.** A "sold out" label being removed is the classic case. The product came back in stock, the text disappeared, and the monitor errored instead of alerting. The standard workaround inside Distill is to include a second, stable element (like the product title) in the same selection so the selector never comes back empty.
- **The page changed structure.** Sites redesign, class names change, and saved selectors rot. The monitor needs to be re-created with a new selection.
- **The page did not load properly.** Slow rendering, consent walls, or a bot-protection page mean the content never appeared. The selector was fine; the page was not there.

The workaround helps, but the underlying design does not change: element disappearance is treated as a failure state. If your use case is restock alerts or watching for content to be removed, this is worth solving at the tool level. PageCrawl's availability tracking treats an element that disappears as a change in its own right, so a vanished "sold out" label produces an alert, not an error log entry.

### Why does Distill.io keep sending false alerts?

False alerts almost always come from content that changes without meaning anything: rotating ads, reordered product listings, timestamps, session tokens in links, or pages captured mid-load. Distill detects that bytes changed; deciding whether the change matters is left to conditions you write and maintain yourself.

Fixes inside Distill, roughly in order of effort:

1. **Tighten the selection.** Monitor the smallest element that contains what you care about instead of the full page.
2. **Exclude noisy regions.** Deselect sliders, ads, and counters explicitly.
3. **Add a wait time** so pages finish loading before capture, which prevents "Loading..." states being stored as changes.
4. **Use text conditions.** Operators like "net added text" ignore content that merely moved around, and regex conditions can pin alerts to specific keywords.

This works, but it is manual rule engineering, and every page needs its own rules. It is also the single most discussed frustration among Distill users, because each false alert consumes notification quota. The alternative approach is semantic: PageCrawl scores every change 0 to 100 with AI on every plan, learns recurring noise patterns per page, and lets you set the threshold below which changes are recorded but not alerted. You define what matters once in plain language instead of maintaining regex per monitor.

### Why do some websites block Distill's checks?

Large retail, ticketing, and travel sites run bot protection that detects automated checks and returns CAPTCHAs, 403 errors, or empty pages. On several major retail sites, Distill's own support staff advise that cloud monitoring is not supported and recommend running checks locally on your own computer instead.

Symptoms include E_REQUEST_FORBIDDEN errors, "Robot or Human?" interstitials, pages that load in your normal browser but not in the monitor, and monitors that work for an hour and then fail repeatedly. Retrying more often makes it worse: aggressive retry behavior after a block trips the protection harder.

Your options inside Distill are limited: slow the check interval dramatically, pay for proxy locations (which multiply check usage on some plans), or move the monitor to a local device so checks come from your home IP. The local route works until the site blocks residential automation patterns too, and it reintroduces the "laptop must stay on" problem.

Monitoring protected sites reliably is an infrastructure problem, and it is one of the areas where PageCrawl invests most heavily. Monitoring hard-to-reach pages works on every PageCrawl plan, including Free, so you can test your most problematic URL before paying anything. When a page needs extra help, you have three escalation paths that Distill does not offer together: route the monitor through PageCrawl's managed proxy network, switch it to the Web Unblocker option built for the most heavily protected pages, or plug in your own proxy pool and PageCrawl will run checks through it. If a page keeps failing in Distill, add it to a free PageCrawl account and watch the first checks come back.

### Why does Distill capture empty or incomplete content on JavaScript-heavy pages?

Distill's extension checks pages in background browser tabs, and many modern sites only render prices, listings, and lazy-loaded content when their tab is visible. Distill's support staff describe this as expected behavior: in an inactive background tab the content "may not load at all", so the monitor sees zeros or empty selections.

This limitation shows up constantly on auction prices, product grids, and infinite-scroll feeds. The workarounds Distill offers each carry a cost: a "load page in window" mode that staff themselves call intrusive because a window pops open during every check, a desktop app that has spent years in beta, or moving the monitor to paid cloud checks.

The browser platform has also taken capability away. When Chrome began phasing out Manifest V2 extensions in mid-2024 and Distill's extension moved to Manifest V3, it permanently lost JavaScript selectors: staff confirmed that custom JS extraction "won't work in modern chrome versions". The Manifest V2 shutdown has since completed for everyone, so there is no going back. If your monitoring depends on scripts running inside your own browser, an extension platform change can remove a feature overnight.

Cloud-first monitoring avoids this class of problem entirely. PageCrawl renders every page in a full browser on its own servers on every check, so JavaScript-heavy pages load the same way they do for a real visitor, with no tab that has to stay focused and no extension platform in the loop.

### Do Distill monitors run when my computer is off?

Only cloud monitors do. Distill's free plan includes a small number of cloud monitors, and everything else runs locally inside your browser extension or desktop app. Local monitors stop when the device sleeps, the browser closes, or the app crashes, and no alert tells you monitoring has stopped.

Forum reports show how much babysitting local checks need: users reload the extension daily to keep it alive, toggle it off and on before bulk checks to avoid memory crashes, and during the version 4.0 rollout in early 2026 some users could not create or save monitors for around three days. The suggested workaround on Distill's own forum for detecting a dead local monitor is creating a cloud monitor that logs into your Distill account and watches your watchlist, a monitor to monitor your monitors.

This split is the root cause behind a surprising share of "Distill stopped working" reports: watchlists that fork between devices, monitors that claim they belong to a different device, checks that silently stop after an extension update, and settings that behave differently in the extension, the desktop app, and the web dashboard.

If you rely on local monitoring, treat it as best-effort: keep the device awake, check the watchlist regularly, and consider a cloud monitor as a canary. If you need monitoring that does not depend on any device being on, that is simply an architecture choice. Every PageCrawl monitor runs in the cloud on every plan. There is no local mode to configure, no extension that must stay open, and nothing to silently die when your laptop lid closes.

### What happens to your monitors if you cancel a Distill subscription?

When a Distill subscription lapses, monitors above the free plan's limit are moved to trash and then deleted. Users have reported losing years of configured monitors this way after a temporary cancellation, because nothing in the cancellation flow made the deletion clear. Change history is also capped by plan, with only the last few versions kept on the free tier.

If you are pausing a Distill subscription, export your watchlist first: the web dashboard can export monitors as CSV or JSON. Keep that file even if you plan to return.

That export file is also your fastest route out. PageCrawl accepts Distill watchlist exports directly on the [Distill alternative page](/alternative/distill): upload the CSV, Excel, or pasted URL list and your monitors are recreated as cloud monitors. PageCrawl is also explicit about data retention: your monitors and history stay in place while your account exists, and if you cancel a paid plan, the retention date for captured data is stated up front rather than applied silently.

### What is the best Distill.io alternative for reliable change alerts?

If your priority is alerts that actually arrive, the alternative needs four things Distill struggles with: fully cloud checks that do not depend on your devices, protected-site monitoring that works, disappearance treated as a change, and noise filtering that does not require hand-written rules. PageCrawl is built around exactly those four.

A quick comparison of the areas this article covered:

| Problem area | Distill.io | PageCrawl |
|---|---|---|
| Checks when your computer is off | Cloud monitors only, most monitors run locally | Every monitor, every plan |
| Element disappears (restock) | SELECTION_EMPTY error, no alert | Tracked as a change, alert sent |
| False alert control | Manual regex and text conditions | AI importance score 0-100 with your threshold, plus conditions |
| Heavily protected sites | Staff advise local monitoring or not supported | Monitored reliably, on every plan |
| Silent monitor death | No indicator for dead local monitors | No local monitors to die |
| AI summaries | Flexi tier ($80+/mo) | Every plan, including Free |
| After cancellation | Monitors above free limit deleted | Retention date stated up front |

For a full feature-by-feature breakdown including pricing, integrations, and the cases where Distill is still the right choice, see the [PageCrawl vs Distill comparison page](/alternative/distill) or the earlier [Distill.io alternative guide](/blog/distill-io-alternative-pagecrawl).

### How do you switch from Distill.io to PageCrawl?

Export your Distill watchlist, upload it to PageCrawl, and your monitors are recreated in the cloud. The whole process takes a few minutes and there is no downtime: both tools can run in parallel while you confirm the new checks are working.

Step by step:

1. **Export from Distill.** In the Distill web dashboard, export your watchlist as CSV or JSON.
2. **Upload to PageCrawl.** On the [Distill alternative page](/alternative/distill), upload the export file or paste your URL list. PageCrawl parses the URLs and monitor names and creates cloud monitors for each.
3. **Pick tracking modes.** For product pages choose price tracking, for articles and policies choose reader mode, for everything else full-page tracking works out of the box.
4. **Connect notifications.** Slack, Discord, Teams, Telegram, email, webhooks, and Google Sheets are included on every plan.
5. **Verify, then retire Distill.** Watch the first few checks come back, spot-check a diff, and cancel or downgrade Distill once you trust the new setup. Remember that Distill deletes monitors above the free limit after cancellation, so keep your export file.

Alerts arrive when the next check detects a change, and checks run as often as every 2 minutes depending on plan.

### Getting Started

If Distill's architecture keeps working against you, the fastest way to know whether switching solves it is to test your worst page. Create a free [PageCrawl](https://pagecrawl.io) account, add the URL that keeps failing or false-alerting in Distill, and compare the results side by side for a week. No credit card is needed, all notification channels are included, and your Distill export imports in one upload on the [alternative page](/alternative/distill).

---

Need more? The complete PageCrawl.io help center, with every article, is available as a single document at https://pagecrawl.io/llms-full.txt. Read it for context on anything this page does not cover.
