Overview
Google’s local pack (often called the “3-pack”) is the map-backed block of local businesses that appears for local-intent queries such asbest pizza in new york city or plumbers in houston. When this module is present, the response includes a localResults array where each entry is a single place.

localResults field is omitted from result when the module is absent — treat it as optional rather than expecting an empty array.
The pack only exposes its visible places (typically 3). When Google renders a “More places” / “More businesses” control, the response also includes result.localResultsMoreLink — the absolute URL of Google’s expanded Local Finder for the query. The full expanded list is not embedded in this response; follow that link (or scrape it separately) to retrieve it.
Local pack extraction is desktop only. Mobile SERPs render the pack with a different layout, and Google’s separate hotels/travel pack is a distinct module — neither is surfaced in
localResults.Place structure
position and title are always present. Every other field is included only when Google renders it for that place, so field availability varies by query (restaurant packs tend to carry price; service packs tend to carry yearsInBusiness, phone, and hours).
Links
Business and service-style packs (plumbers, salons, dentists, …) render each place with action buttons. When present,links carries the ones we resolve:
Each key is included only when Google rendered that button. Restaurant packs render places as plain buttons and carry no
links object.
Response examples
Field availability varies by pack flavour. Restaurant and retail packs tend to carryprice and a review snippet, and render places as plain buttons (no links); service packs tend to carry yearsInBusiness, phone, hours, and links.
Restaurant pack
A response tobest pizza in new york city:
Service pack
A response toplumbers in houston — note yearsInBusiness, phone, hours, and links: