Google Scholar
Connect Google Scholar to show publications, citations, and h-index, search research papers, and export citations in your BJCRUM app.
The Google Scholar connector lets applications you build with BJCRUM work with scholarly data from Google Scholar.
You can use Google Scholar for:
- Researcher and lab publication pages
- Citation counts, h-index, and i10-index
- Citations-per-year charts
- Literature search
- Alerts when your papers are cited
- Research group dashboards
- APA, MLA, and BibTeX citations
Connect Google Scholar. Describe the research page you need. BJCRUM builds it.
How the Connection Works
Google Scholar has no official API.
Your app reaches it through SerpApi, a service that fetches public Google Scholar results, using your own SerpApi key.
Conceptually:
Visitor opens page
↓
Your app's saved copy
↓
Refresh when too old
↓
SerpApi
↓
Google Scholar
Every request to SerpApi uses one search from your SerpApi plan. Your app saves every answer and serves pages from that saved copy, so visitors never use up your searches by opening a page.
Before You Start
You'll need:
- A SerpApi account
- Optionally, the address of your Google Scholar profile
At the time of writing, SerpApi's free plan includes 250 searches a month and 50 an hour. That's plenty for a profile page that refreshes daily, but too few for a busy public search page.
If you want to show a profile, it must be public on Google Scholar. Your profile address contains user=, followed by your profile's ID.
Connect Google Scholar to BJCRUM
Create a SerpApi account
Sign up at serpapi.com and confirm your email address.
Copy your API key
Open the API key page in your SerpApi dashboard and copy your private key.
Open the connector
Open your BJCRUM project, go to Connectors, and select Google Scholar.
Paste your key
Paste the key into the SerpApi key field. It stays on your app's server and is never sent to visitors' browsers.
Add your profile (optional)
Open your profile on Google Scholar, copy the address from your browser, and paste it under Your Scholar profile.
Once connected, the connector page shows your SerpApi plan and how many searches you have left. Checking the connection doesn't use a search.
If you added a profile, use the Open this profile on Google Scholar link to make sure it's the right one.
Build a Publications Page
The most common use is a page that presents a researcher or a lab.
Tell BJCRUM:
Build a publications page for my lab from my Google Scholar profile, with my h-index and citations per year.
The page can include:
- Name, affiliation, and research interests
- Total citations, h-index, and i10-index, all time and for recent years
- A chart of citations per year, with the current year marked as still counting
- The publication list, sorted by most cited or newest
- A line saying the data comes from Google Scholar and when it was last updated
The profile refreshes once a day. Each refresh uses one search for every 100 publications.
Literature Search
You can also build a search page for research papers.
For example:
Add a literature search page where I can find research papers by year.
Search results can include the title, authors, a short snippet, the number of citations, a link to the PDF when one is available, and a Cite button.
You can add:
- A year range
- Newest first, which Google Scholar limits to roughly the last year
- Review articles only
- A list of the papers that cite a result
- Load more, up to Google Scholar's limit of 1,000 results
Results show a snippet from the paper, not its abstract.
Each new search uses one search from your plan. The same search again within a day is answered from your app's saved copy.
Citation Alerts
Want to know when someone cites your work?
Email me when one of my papers gets new citations.
Your published app checks your profile once a day. When a paper's citation count goes up, it finds the new citing papers and emails you.
Alerts start on the second day: the first check only records what already cites each paper.
Email alerts need an email connector as well, such as Resend or Gmail.
Research Group Dashboard
For a lab or a department:
Compare the h-index and citations of everyone in our research group.
The dashboard can show a table of each researcher's citations, h-index, i10-index, and recent citations, sortable by any column, with one combined chart of citations per year.
Researchers are added by their Google Scholar profile address. Google no longer allows searching for profiles by name, so a name alone isn't enough.
Profiles load one after another to stay within SerpApi's hourly limit.
Cite and Export
Researchers often need citations in a specific format.
For example:
Let visitors copy a BibTeX entry for each paper.
Your app can show the formats Google Scholar offers, such as APA and MLA, with a copy button for each, and a .bib file download.
Once a citation has been fetched, your app keeps it, so the same citation never uses another search.
How Searches Are Counted
Your app only uses a search when it needs fresh data:
| What your app does | Searches used |
|---|---|
| Refresh a profile, per 100 publications | 1 a day |
| A new search, per page of 20 results | 1, then free for a day |
| The papers citing a result, per page | 1, then free for 7 days |
| Citation formats for a paper | 1 or 2, then free from then on |
| Citation alerts | The daily profile refresh, plus at most 3 a day |
A profile page that refreshes daily uses about 30 to 60 searches a month.
SerpApi only counts successful searches, and the same request repeated within an hour is free.
What Your App Never Does
The Google Scholar connector follows strict data rules:
- It never invents papers, citation counts, or h-index values, not even as placeholders.
- It never sends your SerpApi key to the browser.
- It never searches Google Scholar every time someone opens a page.
- It never calls a search snippet an abstract.
When no profile is set, your app shows an empty state that asks you to add one, rather than sample data.
Common Problems
The connection check says the key is invalid
Copy the private key from the API key page in your SerpApi dashboard again and paste it into the SerpApi key field.
You're out of searches
Your plan's searches are used up until it renews. The connector page shows when. Your app keeps showing the data it has already saved, and you can upgrade your SerpApi plan for more searches.
The publications page is empty
No profile is set. Paste your Google Scholar profile address under Your Scholar profile on the connector page.
The profile can't be found
Check that the address contains user= and that the profile is public on Google Scholar.
The numbers differ from Google Scholar
Your app refreshes once a day, so its figures can be up to a day behind. A manual refresh is limited to once an hour.
You can't add a researcher by name
Google Scholar no longer allows searching for profiles by name. Ask the researcher for their profile address, or find it on Google Scholar yourself.
Debugging Google Scholar
A good Debug Mode request might look like:
Expected: The publications page should show my profile, my h-index, and my citations per year.
Actual: The page shows an empty state.
Google Scholar shows as connected, and my profile address is set on the connector page.
Error: [PASTE ERROR IF AVAILABLE]
Debug the Google Scholar part of the page without changing its layout.
Never paste your SerpApi key into a prompt.
Test Your Research Pages
Before publishing, test:
- The profile loads with the right name
- Citations, h-index, and i10-index match Google Scholar
- The citations-per-year chart
- Sorting the publication list
- The empty state when no profile is set
- Search with a year range
- Copying a citation and downloading a .bib file
- The data source line and its update time
- How many searches a day of normal use costs
A Good Google Scholar Prompt
A strong request defines:
- Who: Whose profile, or which researchers?
- What: Which metrics and publications should appear?
- Visitors: Can visitors search, or only browse?
- Updates: Do you want alerts about new citations?
- Citations: Which citation formats do visitors need?
For example:
Build a publications page for our lab from my Google Scholar profile. Show my citations, h-index, and i10-index, a chart of citations per year, and my publications sorted by most cited, with a Cite button for each paper. Add a members page comparing everyone in the group, and email me when one of my papers gets new citations.
That's significantly stronger than:
Add Google Scholar.
Next: Request a Connector
You've now covered the currently documented BJCRUM connectors:
- Stripe
- PayPal
- Resend
- Gmail
- Twilio
- Cloudinary
- OpenAI
- Anthropic
- Google Gemini
- xAI
- Calendly
- Google Calendar
- Google Meet
- Google Drive
- Google Scholar
But your application may need another service.
Next, we'll cover Request a Connector: what to do when the integration you need isn't currently available inside BJCRUM.