Site search functionality

Hi,

I’d be really interested to learn how hubspot.com achieves this lovely site search functionality?


I’m in the process of moving our blog from Wordpress over to HubSpot and so far I haven’t been able to find any documentation on how to offer a search option for visitors. I realise this example is probably custom development, but are there any global modules that would help us achieve a basic free text search of all blog posts? If so, can anyone point me in the direction of the documentation?

Thanks so much.

Lois

Hi @LoisJ,

The site search function on the HubSpot site was built with a great deal of custom development. However, I did locate a post from our Designers blog on creating custom site search on the COS: Introducing Site Search

Hopefully, this article points you in the right direction, but it would be great to hear from some experienced COS designers/developers on the topic. @stefen @ndwilliams3 do you guys have any input on this?

Rami

I haven’t really implemented any site search using Google CSE. The post @relabidin provided, looks like a simple implementation that could be handled by anyone with basic Javascript knowledge.

Looking under the hood of the hubspot.com site, it appears they are using the CSE API with their own custom callback script to populate a modal window. You could definately create something similar, but you would need a Javascript pro familiar with the CSE api.

like @ndwilliams3 said… there really isn’t a good turnkey solution available right now. The blog post mentioned by @relabidin is your best bet.

However, I think I know what my next blog post will be about… :slightly_smiling_face:

Thank you all for taking the time to respond. I really appreciate your insight.

I’ll look at what we can do with the Google CSE and move on to customising it if we need to.

Cheers,

Lois

@LoisJ so I created a plugin that takes your sitemap and turns it into search results. Try it out: GitHub - growwithsms/HubSpot-COS-Site-Search: Turnkey solution for the missing website search module · GitHub

A live example can be found on our site: https://www.growwithsms.com/

Blog post that goes a little more into the details of how it works and it’s limitations: https://www.growwithsms.com/blog/hubspot-cos-modal-site-search-plugin

Let me know what you think!

@stefen that is incredible! Thank you so much!

I’m the marketer here rather than a designer/developer, but I know enough to have been able to install this and get it working on our site. I do have a question though if you don’t mind…on my site, the search overlay seems to sit behind the main navigation and side scroll bar so I lose the box to type the search in as well as the close link. I was able to adjust the positioning of the overlay in the css to bring it down enough to be able to see it all below the nav, but it looks like something in the css also adjusted the positioning of the menu.

I don’t seem to have a scroll bar on the result set at all, unlike the demo running on your site, which means I can’t scroll the results if they go further than the one page - it just scrolls the page in the background.

Can you think of anything obvious I may have done wrong, or overlooked before I get our developer to take a closer look?

Thanks so much!

@LoisJ it sounds like a z-index issue. I’ve updated the css with a higher z-index and with the fix for scrolling results. Try again with the latest files and see if that helps..

@stefen That worked a treat! Thank you again :slightly_smiling_face:

I took different approach for search functionality on our website netguru.co. (search is in top right corner)

It’s much simplier and requires no external modules - good for start. I described the solution in detail on my blog: Blog Search in Hubspot COS

Awesome @Patryk! I like your server side implementation. If only HubSpot provided a way to loop through the site pages and landing pages!

Hi everyone,

we’ve just found out that HubSpots’ Site Search is now in Beta. If you use the new design manager, you can sign up here: Welcome to the Site Search Beta

We’ve been playing around with the feature since yesterday and you can see our first results in our Blog: https://www.hoppe7.de/blog

There is also an API-Endpoint for every HS-Portal: DOMAIN/_hcms/search?term=inbound

Blueleadz has a blogpost about, how they use this for their own Custom Search: Blog | How to Implement Site Search in HubSpot

(which is also the source, how we found out about the Beta-Search)

Best regards

Tom

Is there any official documentation about the Content Search beta released yet?

Has anyone conquered this for a global site? We have essentially one domain, but on it runs different subdirectories (e.g. /uk or /au). While the beta search from Hubspot seems to be OK, it would search *all* our sites, which would be a terrible user experience. Has anyone gotten around this? With so much content on our site, I"m eager to figure out how to implement search.

I’ll add this functionality tomorrow so you can filter search results by path.

Filter search results based on domain name would be very handy for Enterprise users.

This can already be done two ways. You can use `www.domain.com/_hcms/search?term=` which will only search content under `www.domain.com`. If you would like to search a subdomain, you can use `www.sub.domain.com/_hcms/search?term=`. If you wish to use the API to search multiple subdomains in your portal: `www.api.hubapi.com/contentsearch/v2/search?portalId=&domain=&domain=&term=`. We’re are working on getting all these options documented publicly on 2026-03 API reference - HubSpot docs.

Thanks for the response! We have subdirectories, not subdomains (e.g. /uk or /au off of our main domain not mainsite.uk.com or mainsite.au.com). Does this functionality work the same as with subdomains?

You can now add a `pathPrefix=` query param to filter results by path prefix. `https://www.hubspot.com/_hcms/search?term=hubspot&minScore=0&pathPrefix=services` as an example to only return results that match `hubspot.com/services*`. This requries a reindex of portals, so may take up to 24 hours to be available for your portal.

Hi @mcoley, The pathPrefix parameter sounds very useful to me. Where is this variable entered? In the Site Search Input module or Site Search Results module? In the snippet, JS or elsewhere?

How do I configure a sub folder such as /en/app/services instead of only /services ?