Skip to content

Site search in GA4: what the search events tell you

GA4 logs the term a shopper searched for, through view_search_results or a search event you send. It has no results count and no traffic source on the event, so zero-result searches and acquisition need extra work.

By , Founder & CEOPublished 5 min read

GA4 records what shoppers type into your search box and, on its own, nothing about whether you had an answer. Its Site search event, view_search_results, fires each time a search results page loads with one of five query parameters in the URL (q, s, search, query or keyword), and it fills the Search term dimension (Google Analytics Help). The documented parameters don't include a results count, so zero-result searches need one parameter you add yourself, and nothing on the event says which channel sent the shopper.

What does GA4 record when someone searches?

Two events feed one dimension:

  • view_search_results is enhanced measurement. Google says it fires each time a user is presented with a search results page, as indicated by a URL query parameter. That makes it a count of results-page loads. It sends unique_search_term only when the term is new in that session.
  • search is the recommended event you send yourself. Google's reference says to log it when the user has performed a search, and its one documented parameter is search_term, the term that was searched for.
  • Both fill the Search term dimension, which Google says is populated by sending search_term with either event.

Shopify's own Search & Discovery reports count differently. They show activity on the search results page and leave out predictive search (Shopify Help Center). Two tools, two definitions.

Three checks before you trust a term list:

  1. Search your own store once and read the address bar. If it carries q, s, search, query or keyword, GA4's default catches it. If not, add your parameter in the Site search advanced settings: Google says you can configure the event to look for other URL query parameters.
  2. Confirm the switch is on. In Admin, open your web data stream and check Enhanced measurement.
  3. Put the last 30 days of GA4's Search term next to Shopify's Searches by search query, which covers the last 30 days by default. The same terms should lead both lists. If GA4 shows far fewer, your search URL isn't being read, or shoppers are using predictive search.

How do you read zero-result searches?

GA4's events carry the term, not the result count, so GA4 alone won't list the searches that found nothing. Two ways in:

  • Shopify. The Search & Discovery app reports searches with no results.
  • GA4. Add a results_count parameter to your search event. Shopify's Liquid search object exposes the number of results, up to a maximum of 1,000 (Shopify developer documentation). Register the parameter as an event-scoped custom dimension; Google says reporting on it starts 24 to 48 hours after you create it.

Then sort the zero-result terms by volume into three piles: things you sell under another name or spelling, things you don't sell, and things that aren't products, such as your return policy. Baymard Institute's 2026 benchmark of 170+ sites and apps finds issues with non-product searches on 66% of the sites it tested, abbreviation and symbol searches on 54%, use-case searches on 43% and exact searches on 12%. A list full of abbreviations, symbols and policy questions sits where more than half of the sites Baymard tested have issues. Baymard's earlier analysis of no-results pages found that nearly 50% of sites fail to give shoppers effective ways to recover from a search that yields no results.

What the list tells you:

  • Pass: the top zero-result terms are products you don't sell, and your no-results page offers a category or an alternative search.
  • Fail: the top terms are products you carry under another name, spelling, abbreviation or use. That is a findability problem. Add the synonym or a redirect, then compare the zero-result share in the next full week.

What do search terms not tell you about acquisition?

The event has no source or campaign field. Channel belongs to the session: Google defines the Session default channel group as the default channel group associated with the start of a session. Put Search term next to it in an exploration and you see who searched for what. You don't see what the channel caused, because searching happens after arrival and shoppers choose whether to search. A brand-name search on your own site shows a shopper who already knew the name, not which channel told them.

Use the list for demand: what to stock, rename and redirect. To learn what a channel caused, switch it off for a slice of your audience and compare orders, as in confirm a weak channel with a holdout test.

Sources, 30 September 2026: Enhanced measurement events (Google Analytics Help, 2026); Recommended events reference: search (Google for Developers, 2026); Dimensions and metrics (Google Analytics Help, 2026); About custom dimensions and metrics (Google Analytics Help, 2026); Shopify Search & Discovery reports and analytics (Shopify Help Center, 2026); Liquid search object (Shopify developer documentation, 2026); Ecommerce Search UX 2026: 8 Search Query Types (Baymard Institute, updated 2026); Search UX: improving No Results pages (Baymard Institute, updated 2025). Baymard's figures come from its own usability benchmark, not an independent audit.

Frequently asked questions

  • How do I see site search terms in GA4?
    Turn on Site search under Enhanced measurement for your web data stream, then use the Search term dimension in a report or exploration. GA4 fills it from the search_term parameter of the view_search_results event, or of a search event you send yourself.
  • Why are my GA4 search terms empty?
    One cause is a search URL whose query parameter GA4 isn't watching. By default it looks for q, s, search, query or keyword. Open your results page, read the address bar, and add your own parameter in the Site search advanced settings if it differs.
  • Does GA4 report searches with no results?
    Not by itself. The documented parameters are the term, optional extra query keys and a flag for terms that are new in the session, with no results count. Shopify's Search & Discovery reports list searches with no results, or you can send a results_count parameter yourself.

Go deeper: Causal attribution, explained.

Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.

Keep reading

Terms in this article

Browse the full glossary

Your platforms guess.
We run the math.

Upload a GA4 export and see what each channel caused, next to last-click, in 1–2 minutes. The read is yours to keep.

Free, in your browser: your file is not uploaded. The full read is €99, refundable within 30 days. Prices exclude VAT.
Or book a 30-min call.