DEV Community

Cover image for Google Scholar API for Bulk Paper Search: $1.50 per 1,000 Papers (2026)
Truffle Pig Data
Truffle Pig Data

Posted on

Google Scholar API for Bulk Paper Search: $1.50 per 1,000 Papers (2026)

Every literature review starts the same way: a search on Google Scholar, then hours of copying titles, authors, years, and citation counts into a spreadsheet. Scholar has no API, blocks scrapers with enthusiasm, and caps how fast a human can click. The Google Scholar Lite API on Apify is my answer for the bulk half of that problem: send a list of queries, get clean paper records back at $1.50 per 1,000 papers.

Disclosure: the Apify links in this post are affiliate links. If you run the Actor, I may earn a referral commission at no extra cost to you.

Does Google Scholar have an API?

No, and it never has. There is no official endpoint, no key to request, and the site is notoriously quick to throw captchas at anything that looks automated. For one-off searches that is a nuisance; for a systematic review with forty queries, it is a wall. So a Google Scholar API in practice means a scraper-style service you call like an API: queries in, structured paper metadata out.

What the Google Scholar Lite API returns

The Google Scholar Lite API returns one record per paper as structured JSON: title, authors, journal, publication year, citation count, result snippet, and links to the paper and its PDF or HTML full text.

Field Example Notes
title "Attention Is All You Need" Paper title
authors Vaswani et al. Author list
journal NeurIPS Venue or journal
year 2017 Publication year
citation count 140000+ The bibliometric headline number
links paper page, PDF or HTML Full-text link when one is available

Each record also carries a stable identifier and the originating query, which matters when you run dozens of searches in one batch.

Who this is for

Researchers and grad students building literature-review shortlists across many queries, bibliometrics folks assembling citation datasets, and developers giving a research agent a live paper-search tool instead of a stale index.

The manual way, and where it breaks

Scraping Scholar directly is a rite of passage that ends the same way for everyone: the first page works, the fifth page gets a captcha, and by page twenty your IP is on a timeout. Add parsing citation counts out of HTML and stitching pagination, and the collection script becomes the project. I wrote one in grad-school style years ago; the captchas won.

The faster way: run the Google Scholar Lite API

Apify Console

  1. Open the Google Scholar Lite API and click Try for free.
  2. Add your searchTerms, optionally a yearFrom and yearTo.
  3. Run it and download the dataset as JSON, CSV, or Excel.

REST

curl -X POST "https://api.apify.com/v2/acts/johnvc~google-scholar-lite-api/runs?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "searchTerms": ["transformer attention mechanism"], "yearFrom": 2020, "maxResultsPerSearch": 50 }'
Enter fullscreen mode Exit fullscreen mode

Run endpoint reference: the Apify API docs.

Bulk paper search in Python

import json
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run = client.actor("johnvc/google-scholar-lite-api").call(
    run_input={
        "searchTerms": ["transformer attention mechanism", "CRISPR gene editing"],
        "yearFrom": 2020,
        "maxResultsPerSearch": 50,
    }
)

for paper in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(json.dumps(paper, indent=2)[:300])
    print("---")
Enter fullscreen mode Exit fullscreen mode

Each query is searched independently, so the records arrive pre-grouped for per-topic shortlists, with the citation count and full-text link in every row.

Export Scholar results to CSV in bulk

Most reviews live in spreadsheets, and the dataset export goes straight there. The task Export Google Scholar search results to CSV in bulk runs a batch and hands you the CSV.

Scrape Scholar for a PRISMA systematic review

Systematic reviews need reproducible, screening-ready records: fixed queries, year bounds, exported results. Scrape Google Scholar for a PRISMA systematic review is that protocol saved as a task.

It works in other languages too

The language input localizes results, and two Chinese-language tasks show it in practice: bulk export Google Scholar to CSV in Chinese and a literature review search by year range in Chinese.

Use it from Claude and other MCP clients

Research agents are the newest heavy users of Scholar data, and this Actor is MCP-ready: Claude, Claude Code, and Cursor can call it mid-conversation to ground an answer in actual papers. The task Bulk Google Scholar search for Claude agents via MCP has the setup, and you can read more about Claude and Claude Code at claude.ai.

FAQ about scraping Google Scholar

Does Google Scholar have an official API, or do I need a scraper?

There is no official API and no sign of one coming, so programmatic access means a scraper-style service. This one behaves like an API: JSON input, JSON output, no captchas on your side.

How much does the Google Scholar scraper cost?

Pay per paper, from $1.50 per 1,000 papers, with no setup or per-run fee. maxResultsPerSearch caps each query (default 100), so a forty-query review has a predictable ceiling, and new Apify accounts include free credit that covers a pilot run.

How is the Lite scraper different from the full Google Scholar API?

Lite does one thing at bulk prices: search results with core metadata (title, authors, venue, year, citation count, links). The full Google Scholar API adds the deeper Scholar surfaces: citation formats like BibTeX and APA, author profiles with h-index, per-article citation history, and co-author networks. Shortlists on Lite, deep dives on the full version.

Can the scraper support a PRISMA-style systematic review?

Yes. Fixed queries plus yearFrom and yearTo bounds give you a reproducible search protocol, and the exported records are ready for title-and-abstract screening. The PRISMA task above is the template.

Can Claude use this Scholar scraper over MCP?

Yes. Connected through the Apify MCP server, the Actor becomes a tool an agent can call, which is what people searching for a Google Scholar MCP are usually trying to build.

Can I schedule the scraper to track citations over time?

Yes. Save your query set as a task, attach an Apify schedule, and re-run monthly; comparing citation counts across runs gives you a citation-velocity view of a field. Start from the Google Scholar Lite API.

More from Truffle Pig Data

The academic shelf has three neighbors: the full Google Scholar API for citations, profiles, and networks, the Google Scholar Case Law API for court opinions, and the Google Patents API for the prior-art side of research.

Wrapping up

Literature reviews should start with data, not data entry. The Google Scholar Lite API turns a query list into a paper dataset for less than the coffee you would drink copying it by hand.

Top comments (0)