Skip to content
NewKitApp

Search tools

Jump to any tool by name

Website to JSON

Extract a clean JSON document from any web page — its metadata, headings, and content stats.

What is Website to JSON?

Website to JSON reads any public web page and returns a single, cleanly structured JSON document that describes it. Instead of dumping raw HTML and leaving you to parse tags, it hands you a ready object with the page's identity — title, description, URL, site name, author, and published time — alongside derived content stats like word count, estimated reading time, and counts for headings, links, images, and code blocks. It also extracts the page's heading outline and a short prose excerpt. The conversion is deterministic: there's no AI model in the loop, so the same URL always produces the same JSON, and because the fetch runs server-side the result is identical whether you're reading it in the browser or piping it into a script.

How to Use Website to JSON

  1. Paste the full URL of the page you want to extract (for example, https://example.com/blog/post).
  2. Click "Extract" — the page is fetched and parsed on the server, with no extension or login required.
  3. Review the formatted JSON in the output panel; it's pretty-printed so you can read it at a glance.
  4. Copy the JSON to your clipboard, or download it as a .json file to use offline.
  5. Feed the downloaded file into a script, notebook, or pipeline that expects structured page data.

Examples

Blog post

Input: https://example.com/blog/how-we-shipped-it

Output: { "url": "https://example.com/blog/how-we-shipped-it", "title": "How We Shipped It", "description": "A behind-the-scenes look at the launch.", "siteName": "Example", "author": "Jane Doe", "publishedTime": "2025-03-14T09:00:00Z", "stats": { "wordCount": 1240, "readingTimeMinutes": 6, "headingCount": 8, "linkCount": 23, "imageCount": 4, "codeBlockCount": 2 }, "headings": ["How We Shipped It", "The Problem", "The Build", "The Launch"], "excerpt": "We had six weeks, three engineers, and a hard deadline…" }

Documentation page

Input: https://docs.example.com/api/authentication

Output: { "url": "https://docs.example.com/api/authentication", "title": "Authentication", "description": "How to authenticate API requests.", "siteName": "Example Docs", "author": null, "publishedTime": null, "stats": { "wordCount": 642, "readingTimeMinutes": 3, "headingCount": 5, "linkCount": 11, "imageCount": 0, "codeBlockCount": 6 }, "headings": ["Authentication", "API Keys", "OAuth 2.0", "Rate Limits"], "excerpt": "All API requests must be authenticated…" }

Common Mistakes

  • Expecting JavaScript-rendered content to appear — pages that build their DOM client-side after load may come back with sparse or empty fields; prefer server-rendered URLs.
  • Treating a missing author or publishedTime as a bug — most sites simply don't publish those metadata tags, and the tool reports null honestly rather than inventing a value.
  • Assuming the excerpt is the full article body — it's a short introductory snippet derived from the readable text; use the headings and stats to understand the whole page.
  • Pasting a URL that redirects to a login or consent screen and expecting the public content — the fetcher follows redirects but can't accept cookies or click through walls.

Why Use This Tool

  • One click to a clean, typed JSON object — no HTML parsing or selector wrangling on your end.
  • Deterministic and AI-free, so results are reproducible and cost nothing per request.
  • Server-side fetch means identical output in the browser and from a script or cron job.
  • Copy to clipboard or download as a .json file for offline use in pipelines and notebooks.

Frequently Asked Questions