Article Summarizer & Web Page Summarizer - AI Text Summarizer
Pricing
Pay per event
Article Summarizer & Web Page Summarizer - AI Text Summarizer
AI summarizer for URLs, articles or your own text: TL;DR, bullets or executive summary, plus key points, topics, sentiment and keywords. Any language, JavaScript sites. No API key. $6/1,000.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Yukai Lin
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
What does Article Summarizer & Text Summarizer do?
Give it URLs or your own texts and get a clear, factual summary of each one: one line, a paragraph, bullet points, a TL;DR or an executive summary, in the language you choose. Optionally get key points, topic tags, sentiment and keywords in the same call, at no extra cost. Works on articles, blogs, documentation, product and company pages, and JavaScript-heavy sites. No API key needed.
Real run (October 3, 2026, shortened). Input: {"urlsText": "https://go.dev/blog/go1.21", "style": "executive", "extras": ["keyPoints", "topics", "sentiment"], "evidence": true}. Output for that article (3,811 characters, one row, $0.006):
{"title": "Go 1.21 is released! - The Go Programming Language","summary": "Go 1.21 is released with new features and improvements.- The Profile Guided Optimization feature is now generally available.- New built-in functions include min, max, and clear.- ...","keyPoints": ["Go 1.21 is released with new features and improvements.", "New built-in functions include min, max, and clear.", "..."],"topics": ["go release", "programming language", "webassembly", "performance improvements"],"sentiment": "positive","evidence": [{ "quote": "We’ve measured the impact of PGO on a wide set of Go programs and see performance improvements of 2-7%.", "verified": true, "position": 777 }],"evidenceDropped": 0,"charged": true}
- ✍️ Five styles: one line, paragraph, 4–7 bullet points, TL;DR, executive summary
- 🔗 Supporting quotes checked against the page (optional, included in the price): 1–3 short quotes from the page, each one found in the page text; quotes the AI made up are removed
- 🔍 Insights included in the price:
keyPoints(list),topics(tags),sentiment(positive / neutral / negative / mixed) andkeywords - 📝 URLs or texts: summarize pages, or paste articles, reviews, transcripts; or chain the output of another Actor
- 📚 Long pages in full: Deep mode summarizes pages longer than one AI pass section by section, then combines them
- 🌍 Any output language: English, Spanish, German, Japanese, Traditional Chinese…
- 🎯 Focus option: e.g. "pricing and plans", "key findings", "risks"
- 🧾 Grounded in the text: the AI is instructed to use only facts from the page and to ignore menus, cookie banners and footers
- 🌐 Works on protected and JavaScript sites: plain HTTP first, a second network if a site blocks data centers, a real browser when needed
- 💸 Pay only for summaries delivered: blocked or empty pages, login walls, paywalled teasers, bot checks, "enable JavaScript" and cookie-consent pages are free (the AI is not even called)
How much does it cost?
| Event | Price |
|---|---|
| Summarized page or text | $6.00 / 1,000 (insights included) |
| Long page summarized in full (Deep mode, only for pages over 30,000 characters) | $12.00 / 1,000 |
Example: summarizing 500 news articles costs 500 × $0.006 = $3.00 on the Free plan.
No start fee. With Deep mode on, pages that fit in one pass keep the standard price. Higher Apify plans get volume discounts.
Unlike general "web page → GPT" tools, you don't need an OpenAI key: the price per page covers everything. Some summarizers on Apify Store add a start fee of $0.09 per run (checked September 2026), which is more than summarizing 15 pages here.
Control your cost
- What is charged: one event per page or text that got a summary. The deep price applies only to pages that were really too long for one pass.
- What is free: lines that are not a URL, duplicate URLs, blocked pages, errors, time-outs, login walls, paywalled pages (only the start of the article is visible), bot checks, "enable JavaScript" and cookie-consent pages and pages with less than about 200 characters of text. Every row has
charged: true/false, and failed rows say "(not charged)". - Before the run starts, the log and the status message show the plan: how many items, the worst-case cost and your max charge per run (also saved as
costPlaninSUMMARY). - Max charge per run: set Maximum cost per run in the run options (or
maxTotalChargeUsdin the API). When it is reached, the run stops starting new items and finishes cleanly:SUMMARY.statusisLIMIT_REACHEDandSUMMARY.notProcessedlists the items that were not started (count and up to 100 inputs). - If Apify restarts the run (server migration or Resurrect), items already finished are skipped and not charged again (
SUMMARY.resumedSkipped).
How to use it
- Paste your URLs or domains (one per line) and/or texts. A line that is not a URL becomes one free
invalid_inputrow; the rest of the run continues. Every input gets exactly one row (summary or error). The same page written differently (example.com,https://example.com/,www.example.com) is summarized and charged once. An empty input ends with one freeinvalid_inputrow (the run does not fail). - Pick a style and max words; optionally insights, an output language and a focus.
- Click Start and export the summaries as JSON, CSV or Excel.
Input example: executive summary with insights
{"urlsText": "https://blog.cloudflare.com/","texts": ["I bought the X200 headphones last month. The noise cancelling is excellent on flights and the battery easily lasts 30 hours, but the ear cushions get hot after an hour and the app keeps disconnecting on my Android phone. Support replied within a day and sent a firmware fix, which solved the app issue."],"style": "executive","extras": ["keyPoints", "topics", "sentiment", "keywords"]}
Output example (real result for the text above)
{"source": "text-0","success": true,"summary": "The X200 headphones have both positive and negative aspects.\n- The noise cancelling is excellent.\n- The battery lasts 30 hours.\n- The ear cushions get hot after an hour.\n- The app had connectivity issues on Android phones, but support provided a fix.","keyPoints": ["The X200 headphones have excellent noise cancelling.", "The battery lasts 30 hours.", "The ear cushions get hot after an hour.", "The app keeps disconnecting on Android phones.", "Support replied within a day with a firmware fix."],"topics": ["headphones", "noise cancelling", "battery life"],"sentiment": "mixed","keywords": ["X200 headphones", "noise cancelling", "battery", "ear cushions", "app", "Android", "firmware fix", "support"],"style": "executive","sourceCharacters": 302,"analysisDepth": "standard"}
For the Cloudflare blog home page the same run returned the topics cloudflare, ai, development, security, performance and sentiment neutral.
Output example: bullet points of a long page, Deep mode (real result)
{"url": "https://en.wikipedia.org/wiki/Cloudflare","title": "Cloudflare - Wikipedia","success": true,"summary": "- Cloudflare, Inc. is an American technology company that provides a range of internet services, including content delivery network services, cloud cybersecurity, DDoS mitigation, and ICANN-accredited domain registration.\n- The company was founded by Matthew Prince, Lee Holloway, and Michelle Zatlyn, and it went public on the New York Stock Exchange in 2019 under the ticker symbol NET.\n- ...\n- In May 2026, Cloudflare announced the elimination of approximately 1,100 positions, around 20 percent of its workforce, in a restructuring the company attributed to the rapid adoption of artificial intelligence tools.","style": "bullets","contentTruncated": false,"sourceCharacters": 158584,"analysisDepth": "deep","chunksSummarized": 9,"mode": "fast","via": "backend"}
In standard mode the same 158,584-character page is summarized from its first ~32,000 characters (contentTruncated: true).
Summarize another Actor's output
Set Dataset ID to a run's dataset and Dataset field to the field to use: URLs are read as pages, other values (article bodies, reviews) are summarized as text. Empty field = the first URL field, else the first long text field.
Output fields
| Field | Meaning |
|---|---|
summary | The summary in the chosen style |
keyPoints, topics, sentiment, keywords | Only when requested in Insights |
evidence | Only with Supporting quotes on: up to 3 { quote, verified, position } items. Each quote was found in the page text the AI read (ignoring case, extra spaces, curly vs straight quotes, dashes and Markdown formatting); position is its character offset in that text. Quotes longer than 300 characters are shortened and end with "…" |
evidenceDropped | How many quotes from the AI were removed because they are not in the page text (made up, paraphrased, translated or too short) |
evidenceNote | Why no quotes were returned, when that is not the page's fault (e.g. long pages in Deep mode) |
sourceCharacters | Length of the page text or your text |
contentTruncated | true when only the first ~32,000 characters were read |
analysisDepth, chunksSummarized | deep pages list how many sections were summarized |
mode, via | fast or browser; fetched by backend (our servers), direct (Apify's network) or browser |
input, inputIndex | For URLs: the line you entered and its position in your list; for texts: inputIndex is the position of the text |
source, textPreview | For texts: text-0, dataset-3… and the start of the text |
datasetIndex | With Dataset ID: position of the value in the source dataset, to join the summary back to the original item |
charged, chargedEvent | Whether this row was charged, and with which event |
error, errorType | For items that failed (not charged): invalid_input, login_required, paywalled, blocked, no_text, not_found, unreachable (unknown domain or no answer), timeout… |
Use with AI agents (MCP)
Connect Apify's MCP server (https://mcp.apify.com?tools=tidytools/web-page-summarizer) to Claude, Cursor or any MCP client, then ask e.g. "Give me a TL;DR and the key points of these five articles".
{ "urlsText": "https://en.wikipedia.org/wiki/Cloudflare", "style": "tldr", "extras": ["keyPoints"] }
Failed items are not charged and carry an errorType (blocked, not_found, timeout, no_text…). The key-value store record SUMMARY has an overall status (SUCCESS, PARTIAL_RESULTS, FAILED, NO_RESULTS, LIMIT_REACHED).
Use it from code and integrations
Run it from your own code with the Apify API. This call waits for the run and returns the results as JSON (replace YOUR_TOKEN with your Apify API token):
curl -X POST "https://api.apify.com/v2/acts/tidytools~web-page-summarizer/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"urlsText":"https://en.wikipedia.org/wiki/Cloudflare"}'
The synchronous endpoint waits up to 5 minutes. For bigger runs, start the run with POST https://api.apify.com/v2/acts/tidytools~web-page-summarizer/runs and read the dataset when it finishes, or use the apify-client package for JavaScript or Python.
Schedules and integrations: run it daily or weekly with Apify Schedules, get a webhook when a run finishes, or send the results to Zapier, Make, n8n, Google Sheets, Slack and other apps with Apify integrations. Results can be exported as JSON, CSV, Excel or XML.
Tips
- For news sites, a paragraph summary of the home page gives a quick digest of the day's headlines.
- Use focus to pull one topic out of long pages (e.g. "refund policy").
- Sentiment is most useful for reviews, posts and news; factual pages are usually
neutral. - For very short texts, pick One line or TL;DR: longer styles can pad a two-sentence text with restatements.
Limitations
- AI summaries can occasionally miss nuance; verify important facts.
- Images and other files without text come back as a free
no_textrow. PDFs and plain-text files are read as text; a PDF's summary may describe its metadata when it holds little text. - Only public pages; no logins. For sites that block data centers, add a proxy under Advanced settings (Apify proxy usage is billed to your Apify account).
- Deep mode reads up to about 240,000 characters (10 sections) per page and takes longer.
- Supporting quotes come from the first ~32,000 characters the AI read, stay in the page's language even with an Output language, and are not available for long pages summarized in Deep mode. A quote shows that the passage is on the page; it does not prove that every sentence of the summary is correct. The list can be empty when no quote from the AI could be found on the page.
- Time limit per item (Advanced settings) stops a page or text that takes too long (default 180 seconds, 600 with Deep); it comes back as a free
timeoutrow. - Pages with less than about 200 characters of text, login pages, paywalled teasers (a short page that says to subscribe to continue reading), bot checks and "enable JavaScript" or cookie-consent pages are not summarized (free
login_required,paywalled,blockedorno_textrows).
FAQ
Does the Actor collect usage data? The Actor sends one anonymous usage counter per run (input type, item count range, outcome) to improve the tool; no URLs, content or account data.
Do I need an OpenAI API key to summarize a web page or text? No. The price per page covers everything, so you don't need an OpenAI key. Paste URLs, or your own articles, reviews or transcripts in Texts to summarize (optional).
Which summary formats can I get, and is there a TL;DR? Summary style offers One line, Paragraph, Bullet points (4–7), TL;DR (1–2 sentences) and Executive summary, with Max words and Output language (optional) to set length and language. Insights (included in the price) adds key points, topic tags, sentiment and keywords in the same AI call at no extra cost.
Does it work on JavaScript sites and very long articles? Yes. With Page fetching (HTTP or browser) on Auto, it reads pages over plain HTTP and switches to a real browser for sites that block it or need JavaScript. For long pages, set Long pages to Deep: pages longer than one AI pass are summarized section by section and combined (up to about 240,000 characters), while Standard reads the first 32,000 characters. PDF links and Office documents are converted to text and summarized like web pages (a scanned PDF without a text layer comes back as a free no_text row).
What is charged and what is free? Each summarized page or text costs $6.00 / 1,000 (insights included), and $12.00 / 1,000 only for pages over 30,000 characters summarized in full in Deep mode; there is no start fee. Lines that are not a URL, duplicate URLs, blocked pages, errors, time-outs, login walls, paywalled pages, bot checks, "enable JavaScript" and cookie-consent pages, and pages with less than about 200 characters of text are free. Wrong input never fails the run: it ends with a free invalid_input row that says what is wrong (no URL or text given, a blank or non-string text, an unknown style that falls back to Paragraph, a maxWords that is not a number), and SUMMARY.inputWarnings lists options that were replaced by their defaults.
Related Actors
More tools by TidyTools that work well with this one:
- Website Markdown Crawler: crawl a whole site or docs portal into clean Markdown for LLMs and RAG
- AI Web Data Extractor: turn any page into structured JSON with the fields you choose
- Web Page Translator: translate pages, text, JSON and subtitles with AI
Support
Open an issue in the Issues tab with the URL and your input. Issues are checked regularly.