Finviz Scraper - Stock Screener, Fundamentals & Insider Trading
Pricing
from $2.20 / 1,000 screener stocks
Finviz Scraper - Stock Screener, Fundamentals & Insider Trading
Scrape Finviz: stock screener with 70+ fundamental & technical fields, full per-ticker fundamentals, analyst ratings, insider trading, news & sector/industry performance. Filter by any criteria or signal, monitor new insider buys & screener matches.
Pricing
from $2.20 / 1,000 screener stocks
Rating
0.0
(0)
Developer
Scrape Sage
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
10 days ago
Last modified
Categories
Share
Finviz Scraper — Stock Screener, Fundamentals, Insider Trading & News
Extract everything that matters from Finviz in clean, structured JSON: the stock screener with 70+ fundamental and technical fields per stock, full per-ticker fundamentals (80+ metrics, analyst ratings & price targets, insider trades, news), the market-wide insider-trading feed, the news & blogs feed, and sector / industry / country performance.
No login, no API key, no browser — fast, reliable, datacenter-friendly extraction. Filter the entire US market by any criteria, watch a signal, or monitor for new insider buys and fresh screener matches.
Why this Finviz scraper?
Most Finviz scrapers grab a thin row — ticker, price, a couple of ratios. This actor reads the custom screener view with every column enabled and, per ticker, merges the full fundamentals snapshot, analyst ratings, insider transactions and news into one record — the richest Finviz dataset on Apify.
| Data | Thin scrapers | This actor |
|---|---|---|
| Screener: ticker, price, % change | ✅ | ✅ |
| Screener: 70+ fields (valuation, growth, margins, performance, SMAs, RSI, short float, target price…) | ❌ | ✅ |
| Total matches + full pagination | partial | ✅ |
| Filter by signal (top gainers, unusual volume, insider buying…) | partial | ✅ |
| Per-ticker fundamentals snapshot (80+ metrics) | ❌ | ✅ |
| Analyst ratings & price targets | ❌ | ✅ |
| Insider transactions (per ticker + market-wide feed) | ❌ | ✅ |
| News with real publisher URLs | partial | ✅ |
| Company website, description, peers & ETF holders | ❌ | ✅ |
| Sector / industry / country performance | ❌ | ✅ |
| SEC Form 4 link on every insider trade | ❌ | ✅ |
| Monitor mode — only new insider buys / screener matches / news | ❌ | ✅ |
Use cases
- Stock screening at scale — run any Finviz screen (your saved URL or structured filters) and export the full 70-field table for hundreds or thousands of matching stocks.
- Insider-trading signals — pull the latest insider buys/sales market-wide, or per ticker, with shares, value and a direct link to the SEC Form 4 filing. Monitor for new insider buying automatically.
- Fundamental analysis — get a complete fundamentals snapshot, analyst ratings and price targets for any watchlist of tickers in one run.
- Quant & backtesting inputs — clean numeric fields (market cap, P/E, growth, margins, performance, RSI, beta, SMAs) ready for a model or spreadsheet.
- Market & sector dashboards — sector / industry / country performance and the market news feed to power a dashboard or newsletter.
- Alerting — combine monitor mode with Apify Schedules to get notified the moment a stock enters your screen, an insider buys, or a rating changes.
How to use
- Sign up for Apify — the free plan is enough to try this actor.
- Open the Finviz Scraper, choose a mode (Screener, Ticker fundamentals, Insider trading, News, or Group performance).
- For the screener, either paste a Finviz screener URL (build it on finviz.com/screener.ashx) or set the filters / signal / sort fields. For ticker mode, list your symbols.
- Click Start and watch results stream into the dataset.
- Export as JSON, CSV, Excel, XML or RSS — or pull results via the Apify API.
Input
{"mode": "screener","filters": ["cap_largeover", "sec_technology", "fa_pe_u30"],"order": "-marketcap","maxResults": 100}
Screen by pasting a URL instead:
{ "mode": "screener", "screenerUrl": "https://finviz.com/screener.ashx?v=111&f=cap_largeover,fa_div_o3&s=ta_topgainers" }
Full fundamentals for a watchlist:
{ "mode": "ticker", "tickers": ["AAPL", "MSFT", "NVDA", "TSLA"] }
Latest insider buys, only new ones each run:
{ "mode": "insider", "insiderTab": "latestBuys", "monitorMode": true }
- mode —
screener,ticker,insider,newsorgroups. - screenerUrl — paste any Finviz screener URL; every filter & signal is honored (overrides the fields below).
- filters — raw Finviz filter codes (e.g.
cap_largeover,sec_technology,fa_pe_u30,fa_div_o3,sh_avgvol_o500), combined with AND. - signal — a Finviz signal preset (Top Gainers, Unusual Volume, Recent Insider Buying, New High…).
- order — sort code, e.g.
-marketcap,-change,pe. - includeTickerDetails — enrich every screened stock with the full fundamentals report (one extra request per stock).
- tickers — symbols for
tickermode. - insiderTab —
latest,latestBuys,latestSales,topWeek,topOwnerWeek. - groupType / groupView —
sector/industry/country/capitalization, viewed asperformance/valuation/overview. - startUrls — paste any Finviz URLs (screener, quote, insider, news, groups); each is auto-routed.
- maxResults — cap per run (0 = no limit).
- monitorMode — output only records not seen on previous runs (see below).
- proxyConfiguration — Apify proxy (datacenter recommended).
Output
Each record carries a recordType so you can filter the dataset. A screener stock (recordType: "screenerStock"):
{"recordType": "screenerStock","ticker": "NVDA","company": "NVIDIA Corp","sector": "Technology","industry": "Semiconductors","country": "USA","marketCap": 4951970000000,"peRatio": 31.34,"forwardPE": 28.1,"eps": 6.53,"dividendYield": 0.02,"roe": 91.87,"profitMargin": 52.41,"perfYtd": 18.4,"rsi": 54.2,"price": 204.63,"change": -1.12,"volume": 215430000,"targetPrice": 245.6,"tickerUrl": "https://finviz.com/quote.ashx?t=NVDA","scrapedAt": "2026-06-17T16:00:00.000Z"}
A ticker report (recordType: "tickerReport") adds website, description, marketCapClass, exchange, a full snapshot object (80+ metrics), ratings (date, action, analyst, rating, price target), insiderTrades (with SEC Form 4 links), news, peers and heldBy (ETFs). An insider transaction (recordType: "insiderTransaction") carries ticker, insider, relationship, date, transaction, cost, shares, value, sharesTotal and secForm4Url. A news item (recordType: "newsItem") carries time, title, source and url. A group row (recordType: "groupRow") carries groupType, name and performance/valuation metrics.
What to expect (field coverage)
Finviz publishes a field only when it has a value for that stock, so some columns are blank for some tickers (e.g. dividend yield for non-dividend payers, forward P/E for unprofitable companies). Nothing is dropped — every available field is included. Numeric cells are parsed to numbers (percent values as their numeric percent; 35.04B → 35040000000), so the dataset is sort- and filter-ready.
Automate & schedule
- Apify API — start runs, fetch datasets, manage schedules over REST.
- apify-client for JavaScript and Python — official SDKs.
- Schedules — run the screener or insider feed every hour/day to capture changes.
- Webhooks — trigger downstream actions (alert, CRM, database) the moment a run finishes.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });const run = await client.actor('scrapesage/finviz-scraper').call({mode: 'insider',insiderTab: 'latestBuys',monitorMode: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${items.length} new insider buys`);
Monitor mode vs. Schedules
Monitor mode remembers the records it has already returned (in a named key-value store) and outputs only new ones on the next run — new insider buys, fresh screener matches, or new articles. It is complementary to Apify Schedules: a Schedule decides when the actor runs; monitor mode decides what is new since last time. Use them together for hands-off alerting, or use monitor mode on its own and run it manually.
Integrate with any app
Connect the dataset to 5,000+ apps — no code required:
- Make — multi-step automation scenarios.
- Zapier — push new insider buys or screener hits into Slack, Sheets or your CRM.
- Slack — get alerted when a monitored screen or insider feed changes.
- Google Drive / Sheets — auto-export every run to a spreadsheet.
- Airbyte — pipe results into your data warehouse.
- GitHub — trigger runs from commits or releases.
Use with AI assistants (MCP)
The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "screen large-cap tech stocks with a P/E under 30 and list recent insider buys" and let it run the scraper for you.
Agent-ready: autonomous payments (x402 & Skyfire)
This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:
- x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
- Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.
Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.
More scrapers from scrapesage
Build a complete market-data & financial-intelligence stack:
- Yahoo Finance Scraper — quotes, financial statements, analyst targets, holders, earnings & historical prices.
- SEC EDGAR Scraper — US company filings, XBRL financials & insider ownership from official data.
- CoinGecko Crypto Scraper — full crypto market data, coins, exchanges, NFTs & trending.
- DeFiLlama Scraper — DeFi protocol TVL, yields, fees & chain analytics.
- Prediction Markets Scraper — Polymarket & Kalshi odds, volume & arbitrage.
- FEC Campaign Finance Scraper — political donors, committees & lobbying.
- Google Trends Scraper — search-demand intelligence and trending topics.
Tips
- Build your screen on Finviz first, copy the URL, and paste it into
screenerUrl— every filter and signal is preserved exactly. - Use
includeTickerDetailssparingly on big screens — it adds one request per stock. For a quick rich table, the 70 screener fields are usually enough. - For insider alerts, set
mode: insider,insiderTab: latestBuysandmonitorMode: true, then add a daily Schedule. - Datacenter proxy is fast and cheap for Finviz; no residential proxy needed.
FAQ
Do I need a Finviz Elite account or API key? No. This actor reads Finviz's public pages — no login, key or Elite subscription required.
How many stocks can the screener return? As many as match your filter (the actor reports the total and paginates 20 per page). Use maxResults to cap a run.
Can I use my own Finviz screener URL? Yes — paste it into screenerUrl. The actor always requests the all-columns custom view so you get 70+ fields regardless of the view in your URL.
Where do insider trades come from? Finviz's insider-trading pages, sourced from SEC Form 4 filings — each record includes a direct link to the filing on SEC.gov.
Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.
A field is empty — why? Finviz only shows a metric when it applies (e.g. no dividend yield for a non-payer). Blanks mean the source has no value there — never that scraping failed.
Is scraping Finviz legal? This actor collects publicly available data only. You are responsible for using the data in compliance with applicable laws and Finviz's terms. This is not investment advice.
Need help?
Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.