# Serve a searchable FAQ from a Google Sheet

An FAQ is one row per question: the question, the answer, maybe a category. Keep it in Google Sheets and PasteSheet serves it as a live JSON API your help page reads — with full-text search so visitors can type a question and get the matching answers instead of scrolling a wall of accordions.

*Last updated: 2026-07-11 · Source: <https://pastesheet.com/use-cases/google-sheets-faq-page>*

## Key facts

- Full-text `search=` — the ranked search box a help page needs — is a **Pro ($19/mo)** feature. Free and Starter serve exact-match and `contains` filters over the same rows.
- The Google Sheets API allows **300 read requests per minute per project** and **60 per minute per user**. Past that it returns `429 RESOURCE_EXHAUSTED`. ([source](https://developers.google.com/workspace/sheets/api/limits))
- A cached endpoint reads the sheet **once per TTL**, not once per request — so 10,000 visitors become one upstream read, and Google's quota stops being your problem.
- The FAQ holds up to **500 entries on Free** and **5,000 on Starter ($9/mo)**; **Pro** removes the row cap.

## Support content that support can edit

FAQ and help content changes constantly: a new question comes up, an answer needs a tweak, a policy shifts. The people who know the answers are on the support team, not the front-end team — so hard-coding questions into a template means every update is a developer ticket.

Put each question and answer in a Google Sheet row and PasteSheet publishes it as an API. Support edits cells; the help page re-reads them after the cache refreshes. Add a `category` column to group answers, and let PasteSheet full-text search the questions so a visitor typing "refund" lands on the right entry.

## What a help page needs

A simple three- or four-column tab covers most FAQ and help centers:

- `question` and `answer` — one row per entry.
- `category` to group entries into sections.
- `order` to control ranking within a section.
- A `search=` query so visitors find answers by keyword, not by scrolling.

## Search questions from the front end

Wire a search box to the endpoint and pass the visitor's text to `search=`. PasteSheet ranks matching rows across your questions and answers:

```bash
curl "https://pastesheet.com/your-endpoint/FAQ?search=refund&per_page=5"

{
  "data": [
    {
      "question": "How do I request a refund?",
      "answer": "Email support within 30 days and we'll process it.",
      "category": "Billing",
      "order": 2
    }
  ]
}
```

## Read-only, so it is safe to publish

Because the endpoint is **read-only by design**, it is safe to expose publicly or hand to a teammate: consumers can read and query the data but can never change the sheet. And there is **no Google Cloud project, OAuth screen, or service account** to set up — you paste a share URL and get a live API.

## What it costs

**Starter — $9/month.** For indie makers shipping a real app.

- Endpoints: 10
- Requests: 50,000 / month
- Rows per endpoint: 5,000
- Tabs per endpoint: 5
- Rate limit: 300 / minute

**Full-text search is a Pro feature.** Free and Starter serve exact-match and `contains` filters over your FAQ; upgrade to **Pro ($19/mo)** for `search=` ranking across every question and answer.

## Frequently asked questions

### Can visitors search the FAQ?

Yes. Pass a visitor's query to the search parameter and PasteSheet ranks matching rows across your questions and answers. Full-text search is available on the Pro plan; Free and Starter support exact and contains filters.

### How do I group answers into sections?

Add a category column and filter the endpoint by it, or read every row and group client-side. An order column lets you control ranking within each section.

### Who keeps the answers up to date?

Anyone you share the Google Sheet with. Support or ops staff edit answers in a familiar tool, and the help page reflects their changes after the cache refreshes — no deploy needed.

### Can I reuse this for an AI support agent?

Yes. The same sheet can back a [support agent](https://pastesheet.com/use-cases/google-sheets-support-agent) over MCP, so an AI assistant queries the same answers your help page shows.

## Sources

- [Usage limits — Google Sheets API](https://developers.google.com/workspace/sheets/api/limits) — Google

## Related use cases

- [Use Google Sheets as a Free Headless CMS](https://pastesheet.com/use-cases/google-sheets-cms) — Run your website's content from a Google Sheet. PasteSheet publishes it as a live, read-only JSON API — no database, no backend, no Google Cloud setup.
- [Drive a Marketing Site from Google Sheets](https://pastesheet.com/use-cases/google-sheets-content-website) — Run your marketing site's content blocks from a Google Sheet — hero copy, feature lists, section text. PasteSheet publishes it as a live, read-only JSON API.
- [Build a Testimonials Wall from a Sheet](https://pastesheet.com/use-cases/google-sheets-testimonials) — Run a testimonials or reviews wall from a Google Sheet — names, quotes, ratings, avatars. Feature-flag which ones show over a live, read-only JSON API.
- [A Support Agent Lookup in Google Sheets](https://pastesheet.com/use-cases/google-sheets-support-agent) — Let a support agent look up orders, policies, and account tiers in a Google Sheet over MCP — read-only, so it answers tickets but never edits a record.

---

[PasteSheet](https://pastesheet.com) turns any Google Sheet into a live REST API and MCP server for AI agents — no backend, no code. Canonical HTML version of this page: <https://pastesheet.com/use-cases/google-sheets-faq-page>
