When a bulk download reports failures such as "couldn't be fetched" or "returned no data," the cause is almost always the data source rate-limiting the app, not bad symbols and not lost data. Existing history is always kept; a failed fetch just means no new rows this attempt.
What to do
- Use "Retry these." Failed tickers stay listed and selected, so one click re-runs just the stragglers. Most clear on the first retry.
- If retries keep failing, wait. A tripped Yahoo limit can stall requests for a while (sometimes the better part of an hour). The app already paces itself, with profile fetches strictly one at a time and price history in modest batches, because that's the fastest sustainable pace; hammering retries only extends the timeout.
- A ticker that fails every time at one source may just not be covered there. Pin it to the other source on Securities & prices and rebuild its history.
Why this happens
Yahoo's feed is unofficial and throttles sustained request volume; a thousand-ticker universe simply takes minutes. Tiingo has documented, per-key limits. They are generous for daily use, but a full-universe rebuild can still brush them.
Failures that aren't rate limits look different: a symbol typo fails instantly and identically at both sources, and a stale price with successful downloads is a different problem entirely.