# Google Events API — $0.002 per event

> Google Events API: Event cards for a query — title, date, venue, address and link. $0.002 per delivered event, nothing delivered means nothing charged.

[Home](https://quanticdata.io/)/[Collectors](https://quanticdata.io/collectors/)/*Google Events API*

# Google Events API

A Google Events API that turns the events vertical into rows. Search "concerts in Milan" or "tech meetups in Berlin" from a given place and get each event card back as data — title, the date line as shown, venue, address, link and thumbnail — billed per event delivered.

[Get my free API key](https://app.quanticdata.io/register) [See the request](/collectors/google-events-api/#integration)

$0.002 per delivered event · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/google_events/run

```
$ curl $QD/google_events/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"query": "concerts in Milan", "country": "it", "lang": "en", "max_results": 10}'
{ "status": "done", "count": 10,
  "results": [
    {
      "title": "…",
      "date": "…",
      "venue": "…",
      "address": "…" } ],
  "cost": 0.02 }
# 10 events × $0.002 · nothing delivered, nothing charged
```

**$0.002 / event**1,000 events on the free $2 every month

**Semantic input**query, location, country — no URL lists

**Up to 20**events per run, pagination handled for you

**No browser**read over HTTP/TLS — cheaper and faster than rendering

On this page: [What it is](/collectors/google-events-api/#what) [Output fields](/collectors/google-events-api/#output) [Inputs](/collectors/google-events-api/#input) [Pricing](/collectors/google-events-api/#pricing) [Integration](/collectors/google-events-api/#integration) [Use cases](/collectors/google-events-api/#use-cases) [Versus the alternatives](/collectors/google-events-api/#compare) [FAQ](/collectors/google-events-api/#faq)

## What a Google Events API does

Google assembles the events vertical from listings across ticketing sites, venues and aggregators and shows it for a query and a location. This collector reads that assembled surface, so one query returns the events Google itself decided to show for that country and language, each already split into title, date, venue and address instead of left inside a card.

Building this direct means either scraping a dozen ticketing sites and reconciling them, or rendering the vertical yourself — it is a service-side rendered surface, like Hotels and Maps, not a plain HTML page. The collector runs that browser ladder on our side and hands back parsed rows; you send a query and, optionally, the place to search from.

Input is meaning, not a URL *query* *location* *country* *lang* *max_results*

## What one event looks like

Every delivered event carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

| Field | Type | What it holds |
| --- | --- | --- |
| `rank` | integer | 1-based position. |
| `title` | string | Event title. |
| `date` | string · nullable | Date line as shown ("Sat, Aug 22, 7 – 10 PM"). |
| `venue` | string · nullable | Venue name. |
| `address` | string · nullable | Venue address. |
| `link` | string · nullable | Event link. |
| `thumbnail` | string · nullable | Event image. |

## Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

| Input | Type | Required | What it does |
| --- | --- | --- | --- |
| `query` | string | yes | Event search, e.g. "concerts in Milan". |
| `location` | string | no | Search as if from this place, e.g. "Milan, Italy". |
| `country` | string | no | ISO 3166-1 alpha-2 code — proxy exit geo and Google locale (gl). Omit for the default pool. |
| `lang` | string | no | Interface language (hl), e.g. en, it, de. |
| `max_results` | integer | no | How many events to deliver at most (1–20). You pay only for delivered events. |

Pricing

## Google Events API pricing

$0.002 per delivered event. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 1,000 events before you spend anything.

**$0.002**per delivered event*$1.6 per 1,000 delivered events*

**1,000 events**on the free allowance*$2 every month, no card*

**Zero rows**zero charge*blocks, captchas and retries are on us*

**−30%**on volume tiers*the catalog returns your key's price*

### Pay as you go

$0/mo

- $2 free credit / month

- 60 requests / min

- List unit prices

### Starter

$19/mo

- $15 free credit / month

- 300 requests / min

- 10% off unit prices

Most popular

### Growth

$79/mo

- $50 free credit / month

- 600 requests / min

- 20% off unit prices

### Scale

$299/mo

- $250 free credit / month

- 1,200 requests / min

- 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other [Data API](https://quanticdata.io/web-data-api-for-ai/). Prices are launch pricing read live from the billing config — `GET /v1/scraper/collectors` returns the price your key actually pays.

Integration

## One POST, typed rows

Base URL `https://api.quanticdata.io/v1`, Bearer auth, the same key as every other Data API. Endpoint: `POST /v1/scraper/collectors/google_events/run`.

```
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/google_events/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"concerts in Milan","country":"it","lang":"en","max_results":10}'
```

```
import requests

r = requests.post(
    "https://api.quanticdata.io/v1/scraper/collectors/google_events/run",
    headers={"Authorization": f"Bearer {QD_API_KEY}"},
    json={
        "query": "concerts in Milan",
        "country": "it",
        "lang": "en",
        "max_results": 10
    },
    timeout=120,
)
for row in r.json()["payload"]["results"]:
    print(row)
```

```
const res = await fetch(
  "https://api.quanticdata.io/v1/scraper/collectors/google_events/run",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.QD_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({"query":"concerts in Milan","country":"it","lang":"en","max_results":10}),
  },
);
const { payload } = await res.json();
console.table(payload.results);
```

```
claude mcp add quantumproxies \
  -e QUANTUMPROXIES_API_KEY=qd_live_your_key_here \
  -- npx -y quantumproxies-mcp

# then, in the chat:
> run the google_events collector with query="concerts in Milan" and country="it"
```

## What people build with the Google Events API

Three shapes of work this endpoint was designed around.

### Local listings pages

Populate a "what's on in " section from a standing query per market, refreshed on a schedule.

### Venue and promoter tracking

Watch which events surface for a venue or genre query and when new dates appear.

### Event datasets

Collect title, date line, venue and address across cities to build a structured events table for enrichment.

## Google Events API versus rolling your own

The differences that actually cost time when you build this in-house.

|  | DIY scraper | This collector |
| --- | --- | --- |
| What you send | A scraper per ticketing site to reconcile | One query and a location |
| Rendering | Drive the vertical's browser yourself | Service-side browser ladder, on us |
| Shape | A card blob to parse | Title, date, venue, address, link as fields |

## FAQ

Questions we get about the Google Events API.

[Something else? Ask us →](mailto:hello@quanticdata.io)

### Is there an official Google Events API?

No. Google exposes events as a search vertical, not a public API, so this collector reads that vertical for you and returns each card as structured rows. You query it the way you would search — by phrase and place.

### How do I control the location?

Put the place in the query ("concerts in Milan") and, when you want the search run as if from somewhere specific, pass `location` alongside `country` and `lang`. Results then reflect what Google shows there.

### Do I get ticket prices or exact start times?

You get what the card exposes: title, the date line as Google renders it, venue, address, link and thumbnail. The card does not always carry a price or a precise start time, so those are only as complete as Google shows them.

### How is this different from a calendar or ads events API?

Entirely. Those manage your own calendar or your ad conversions; this reads Google's public events search results for a query. Same word, unrelated data.

### Is there a free Google Events API?

Every account gets $2 of credit every month with no card, which is about 1,000 delivered events on this endpoint at $0.002 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

### How much does one run cost?

Multiply the rows you actually receive by $0.002. A run capped at 20 events — the maximum for this collector — costs $0.04 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and `GET /v1/scraper/collectors` returns the price your key actually pays.

## Run the Google Events API now

$2 of free credit every month, no card. Your key returns its own prices from `GET /v1/scraper/collectors`.

[Get my free API key](https://app.quanticdata.io/register)

Related: [All 65 collectors](https://quanticdata.io/collectors/) [Google Maps Scraper API](https://quanticdata.io/collectors/google-maps-scraper-api/) [Business directory API](https://quanticdata.io/collectors/business-directory-api/) [Google Hotels API](https://quanticdata.io/collectors/google-hotels-api/) [Google Flights API](https://quanticdata.io/collectors/google-flights-api/) [Reverse image search API](https://quanticdata.io/collectors/reverse-image-search-api/) [Documentation](https://quanticdata.io/docs/)

---

Source: https://quanticdata.io/collectors/google-events-api/ · Site index for AI: https://quanticdata.io/llms.txt
