Runs onWeb Scraping API

Website to Markdown API

Convert any URL to clean Markdown for LLM ingestion, RAG pipelines and docs migration.

4.9average across
G2 — 4.8 out of 5Google — 4.9 out of 5Product Hunt — 5.0 out of 5
REQUEST PAYLOAD
{
  "url": "example.com",
  "format": "markdown"
}
Output
Markdown
Cost
1 credit a page
Best for
RAG and docs migration
  • 500 free credits every month
  • No card to start
  • Failed requests cost nothing
Playground
format
Request
POST /webscraping
{
  "url": "stripe.com",
  "format": [
    "markdown"
  ]
}
loading example…
Want every endpoint and every parameter?
The Geekflare playground has every API and option, plus saved requests. Free with 500 credits a month.
Open the playground
Trusted by teams at
PfizerNBCUniversalTCSHostingerKissflowLookoutPlivoClearSaleSparkianCBSplitOmreon
PfizerNBCUniversalTCSHostingerKissflowLookoutPlivoClearSaleSparkianCBSplitOmreon

Raw HTML fights your LLM

  • Nav bars, ads and markup waste tokens and pollute context
  • Layout changes silently break brittle parsers
  • You maintain headless browsers, proxies and CAPTCHA solvers yourself

Clean Markdown

~60% fewer tokens
  • Headings, lists, links and tables preserved, boilerplate stripped
  • markdown-llm strips nav and ads further for token-efficient RAG context
  • Rendering, proxies and anti-bot handled for you

There is no separate endpoint to learn. Set format: "markdown" — or "markdown-llm" — on the Web Scraping API.

Engineered for LLM ingestion

Structure in, structure out.

The conversion keeps what carries meaning and drops what carries layout, so chunks land on real boundaries instead of mid-sentence.

Preserves structure

Headings, lists, links and tables convert to proper Markdown, not flattened text.

# ## - | |

LLM-ready variant

markdown-llm additionally strips navigation, ads and cookie banners, leaving the content you meant to embed.

format: "markdown-llm"

Handles JS-rendered pages

Headless Chrome renders React, Vue and Angular pages fully before the Markdown conversion runs.

renderJS

Chunks predictably

Because headings survive, your splitter can cut on sections rather than on an arbitrary character count.

RAG-ready

Several formats at once

Ask for Markdown and HTML in the same request when you need both, and pay the same single credit.

format: ["markdown", "html"]

Same key, same pool

Markdown costs no more than raw HTML, and the credits are shared with every other Geekflare API.

1 credit
Use cases

How teams run Markdown in production.

Split on headings, not on a character count

Fixed-size chunking cuts mid-sentence and strands a table from its caption. Because the conversion keeps H1–H6, your splitter can cut on sections, so each chunk is a coherent idea with a heading you can cite in the answer.

  • Heading levels survive so sections are addressable
  • Tables stay with the text that introduces them
  • Cite the heading back to the user as the source
Typical request
POST /webscraping
{
  "url": "https://docs.example.com/billing",
  "format": ["markdown-llm"]
}
What the splitter sees
## Billing cycleschunk boundary
tablekept whole
inside its own section
mid-sentence cutsnone
Quickstart

One request, Markdown back.

quickstart.pyofficial SDK
# pip install geekflare-api
from geekflare_api.client import GeekflareClient
from geekflare_api.models import WebScrapeDto

with GeekflareClient(api_key="<api-key>") as client:
    result = client.web_scrape(
        WebScrapeDto(
            url="https://example.com",
            format=["markdown"]
        )
    )
    print(result)
Pricing

One credit a page, whichever format.

Markdown costs same as HTML scraping, and credits are shared with every other Geekflare API. Failed requests cost nothing.

5002M

Growth covers up to ~100,000 pages a month (100K credits), about $0.69 per 1,000 pages. Or $58/mo billed yearly.

pages
60,000
Plan
Growth · $69/mo
FreeNo card
$0/mo
~500
pages / month
  • 500 credits / month
  • 1 team member
  • 7 days log retention
  • 1 request per second
Starter
$19/mo
~10,000
pages / month
  • 10K credits / month
  • 3 team members
  • 30 days log retention
  • 5 requests per second
GrowthMost popular
$69/mo
~100,000
pages / month
  • 100K credits / month
  • 5 team members
  • 30 days log retention
  • 10 requests per second
Business
$349/mo
~1,000,000
pages / month
  • 1M credits / month
  • 25 team members
  • 90 days log retention
  • 25 requests per second
Start freeCompare plans and credit packsEvery account starts free. Upgrade from the dashboard when you need more, or buy a credit pack from $10.
In production

Teams that stopped maintaining scrapers.

Read all reviews
“Found Geekflare API to get markdown from URL for my AI agents. It is fast and cheaper and works on almost every website.”
Ram DasiArchitect, PA Consulting
“After trying many scraping services, I selected Geekflare to scrape public directories. Mainly for two reasons - it is cheaper and fast.”
Vishu SharmaCTO
“Documentation was easy to follow. We were scraping dynamic pages within hours. Very reliable service.”
Marco SilvaAnalytics Engineer
Questions

Markdown, specifically.

General scraping questions are answered on the Web Scraping API page.

Open the Web Scraping API page

markdown converts the page's structure faithfully — headings, links, tables, images. markdown-llm additionally strips navigation, ads, cookie banners and other boilerplate that isn't useful context for a model.

Yes. Tables convert to Markdown table syntax, links keep their href as standard [text](url) Markdown, and heading levels H1–H6 are preserved.

Yes, that's the main reason format: "markdown-llm" exists. Boilerplate-free Markdown chunks more predictably than raw HTML and avoids spending embedding budget on layout noise.

This endpoint converts one URL per request. For crawling many pages from a site in a single job, that's our Crawl API — talk to us if you need it.

Yes. The request runs through headless Chrome first, so client-side-rendered content is present before the conversion happens.

Turndown converts HTML you already have. This API also fetches the page for you, handling JavaScript rendering, proxy rotation and anti-bot challenges.

A page costs 1 credit, the same as any other Web Scraping format. Asking for several formats in one request still costs one credit. Failed requests cost nothing.

Start extracting Markdown today.

Create a free account to test URLs in the playground and grab your API key. 500 credits a month, no card.