B2B Revenue Autopilot Kit

Cost engineering · 18 October 2026 · 9 min read

Google Places fieldMask: the one field that quadruples your lead bill

Two calls to the same endpoint, same query, same 20 businesses returned. One costs nothing and one costs USD 0.035. The difference is not pagination, caching or region — it is a single line in the request body called fieldMask, and most tutorials set it wrong by being too generous.

How Places API (New) actually charges you

The Text Search endpoint has four billing SKUs. You are not charged four times: you are charged once, at the highest tier present in the response you asked for. That is the whole mechanism, and it is why the field mask is a pricing decision and not a formatting detail.

SKUFree monthly tierPrice per 1,000 requests (first tier)
Text Search Essentials (IDs only)unlimitedfree
Text Search Pro5,000 requestsUSD 32.00
Text Search Enterprise1,000 requestsUSD 35.00
Text Search Enterprise + Atmosphere1,000 requestsUSD 40.00

Source: Google Maps Platform pricing page, checked 16 October 2026. Volume discounts apply: the second tier drops Enterprise to USD 28.00 and Atmosphere to USD 32.00 per 1,000.

Which field pushes you into which SKU

Fields are grouped. Ask for one field from a group and the whole response is billed at that group's tier:

FieldSKU it triggers
places.id, displayName, formattedAddress, primaryType, primaryTypeDisplayNameEssentials
rating, userRatingCount, businessStatusPro
nationalPhoneNumber, internationalPhoneNumber, websiteUriEnterprise
reviews, editorialSummary, generativeSummaryEnterprise + Atmosphere

Read that table as a price list, because that is what it is. The moment you add nationalPhoneNumber to a request that otherwise only needed names, the price of that request jumps from USD 0 (IDs-only is free and unlimited) to USD 0.035 — and it does not come back down until you remove the field.

The mistake that costs the most: the wildcard

"fieldMask": "*" is the fastest way to write a working request and the most expensive way to run one. It asks for everything the endpoint can return, so the response always contains an Atmosphere field, so every single call is billed at the top tier — including the calls you only wanted to use for deduplication.

Two more traps that produce the same effect without the wildcard:

What our workflow requests, and why it is not the cheapest option

The prospecting flow asks for exactly nine fields and settles in the Enterprise tier:

places.id
places.displayName
places.formattedAddress
places.primaryType
places.primaryTypeDisplayName
places.rating
places.userRatingCount
places.businessStatus
places.nationalPhoneNumber
places.websiteUri

A cheaper mask exists and we deliberately did not use it. If you drop the phone and the website, the response drops to the Pro tier (USD 32.00 per 1,000 instead of USD 35.00) — a saving of about 8 %. But without a phone number and a website there is nothing to open a conversation with: you get a list of business names, not prospects. A lead you cannot contact is not a lead, it is a row.

That is the entire trade-off, and it is the reason the kit's documented cost is USD 1.81 per 1,000 qualified leads rather than USD 1.70: the extra three cents per thousand requests buys the only fields that make the output sellable.

The real arithmetic, at the volumes people actually run

Text Search returns a maximum of 20 businesses per request (that is not a plan limit, it is the endpoint). The flow is configured to page up to three times per run, so one full run is 3 requests and up to 60 businesses.

Leads wantedRequestsPlaces cost (Enterprise)
201USD 0.035
60 (one full run)3USD 0.105
1,00050USD 1.75
10,000500USD 0 (inside the 1,000/month free tier)
20,0001,000USD 0
100,0005,000USD 140.00 (4,000 billable × 0.035)

The counterintuitive line is the fourth one: prospecting ten thousand businesses costs nothing, because the Enterprise tier includes its first 1,000 requests each month. Below roughly 20,000 leads a month, the Places side of this pipeline is free. What you actually pay for at that scale is the model, and there the numbers are five times smaller (USD 0.56 for 10,000 leads with caching).

How to cut the bill without guessing

The method we use, in order:

  1. Start from the IDs-only mask and add fields one at a time. Each field you add can only keep the SKU the same or raise it. Adding fields one by one tells you exactly which addition cost you money.
  2. Never request reviews, summaries or editorial content unless a human reads them. They are the single most expensive group and the least useful for scoring: a rating and a rating count already tell you whether the business has a reputation.
  3. Set a monthly quota per project, not a budget alarm. An alarm tells you after the money is gone; a quota per key caps it. Google Maps Platform lets you cap requests per day per API.
  4. Cache the response, not the request. Deduplicate by placeId before calling again: our own workflow learned this the hard way, and a second run over the same query legitimately returns zero new rows.

What this means if you are buying a template

When a seller quotes you “USD X per lead”, ask to see the field mask. It is the one line that decides whether the arithmetic in the sales page is real. A template that requests * is not dishonest, it is just unmeasured — and you will be the one paying 40 dollars per thousand requests while the page promised thirty-five.

Ours is published in full, with the SKU table and the monthly free tiers, in the cost document that ships inside the kit. If you would rather verify it before buying than after, the article you just read is the short version of that document.

The kit these articles come from

Two n8n workflows, an MCP server, six documents in English and Spanish, a validator and a self-test. USD 49 one time, on the n8n instance you already have.

See pricing