When YouTube's feed fails, the Actor asks again, reads the topic elsewhere and says what it could not read (0.1.17, 0.1.18). The recent-video figures and the titles a channel's topic is read from come from its public feed. On 2026-10-08 — by our run records from about 01:25 UTC, and still at our last reading at 03:21 — YouTube's feed service answered "not found" or "server error" for channels that have a feed: of 40 feeds that had answered the day before, 8 answered a single request at 02:01 UTC and 14 at 02:25. Until this build a channel in that state was delivered as if it had no uploads (recentVideosAnalyzed: 0, no topKeywords from titles, keywordMatch: null); a filter on recent videos turned it down as "no recent upload", minKeywordMatchPercent turned it down as off topic, and its similarity to a seed was worked out from its description alone. Now:
- a feed that does not come is asked up to five more times (that brought 25 of the 40 at 02:01 and 39 at 02:25);
- (0.1.18) while the last channels of a run bring next to no feeds, a feed is asked one more time instead of five: at 02:58 UTC the service was down almost altogether — the same forty channels gave 2 feeds in six tries each, and twenty of them, asked from eight addresses, 13 feeds in 312 answers — and asking five more times only made a run slower;
- a channel whose feed still does not come has its topic read from the titles on its Videos tab (one more request), so
topKeywords, keywordMatch and the similarity to a seed are still there;
- its row carries
recentVideosAnalyzed: null and empty upload, view and like columns — not known, instead of none — and the status message counts such rows;
uploadedWithinDays and minMedianViews turn such a channel down as "recent videos not known (YouTube's feed did not answer)", and so does a topic or similarity threshold when neither the feed nor the Videos tab gave titles; when that is most of what was turned down and nothing could be delivered, the run fails with that reason instead of advising you to loosen your filters;
- a channel without public videos is unchanged:
recentVideosAnalyzed: 0;
- a row without its recent-video figures is charged like any other row, and an "only new" list remembers it like any other.
Wording of a run's last word (0.1.19). A run that delivers nothing used to say "nothing charged". The run-start event ($0.00005) is charged for every run, so the message now says "no rows charged". Nothing about charging itself changed.
README corrected after an independent fact-check (0.1.19): 11 statements were wrong or said more than the measurements do, 7 had no record behind them. Among them: one keyword followed to the end brought 602 to 815 channels (not "664 to 815"); only regular plurals and a list of irregular ones count as their singular; YouTube did refuse requests in 3 of 29 similar-channel runs; the outage of YouTube's feed service began around 01:25 UTC, not after 01:30; a row without figures is charged, a later run for its figures is charged again, and a list does not deliver the channel twice. The full list is in the Actor's QA record.
A seed and a similar channel are named even when their feed gives nothing. YouTube's feed answers 404 for some channels. A seed in that state came with seedTitle: null on its rows, and a similar channel found next to the seed's videos with title: null (1 row of 24 and 1 of 40 in two runs; the golden set caught the seed on 2026-10-08). The channel's own page names it now.
A run that delivers nothing says why in its dataset too. When every channel was filtered out, a run used to end with an empty dataset and the reason in its status message only. It now also writes one free status row with that message, as the comments and search Actors of this series do, so a call that reads only the dataset is not left with an empty answer. An "only new" run that finds nothing new still leaves the dataset empty.
README rebuilt in the foXLabs layout: use with AI agents (Apify MCP server, agentic payments), getting started, use cases, integration, a price table, legal notes. The measured figures are the ones of 2026-10-07.
A run of an "only new" list that is killed by its timeout was tested on this Actor on the platform: the list's next run read the killed run's rows back and delivered none of them again.
The record of an "only new" list no longer carries the mark that said whether the list's last run ended without being cut short; it never changed what this Actor delivers.