What is HubDB and Why Should You Care?

Karl Fischmann

September 22, 2017   Follow
Tag icon



Let me set the scene. You've got this exciting new project you're working on; you've done your planning, got your team involved, you've bashed out a fantastic marketing strategy and you have all your ducks in a row to execute. You engage your developer to build out the new site out on HubSpot; they then come back to you and tell you that implementation is going to take at least twice as long as you anticipated due to all the repeating elements that need to be populated with differing content, and that the type of content you had in mind for certain features simply won't work with HubSpot... Not to mention that your proposed changes down the road based on performance will be tricky and time-consuming to implement...

Le sigh.

Wouldn't it be better if HubSpot was more malleable? More easily able to deliver the website envisioned in your head, in a simple-to-implement-and-update manner? You want to move fast, both in the build and the optimisation of your marketing mix or assets. Getting bogged down in fulfilment is no one's idea of tweaking the dials or at least moving towards your version of marketing nirvana.

As a result, we marketers clamber for new ways to introduce efficiencies that allow for more time to focus on the 'good stuff'; actual marketing. Because high fiving whilst quoting acronyms is what we do, amirite... ?!


Enter HubDB! 

In short, this feature allows you to very easily adopt a more fluid or constant state of evolution to your marketing, which practically invites Growth Driven Design over for dinner, and forces it to bring the booze. Implementation is also faster and easier, as many website pages can now be generated dynamically from a single source of data, and that data can be used anywhere you wish.

"That's all good and well", I hear you say, "but what is HubDB and what exactly does this thang enable me to do?"

HubDB enables the creation and management of databases right within the HubSpot interface, and allows information from those databases to be dynamically used within your marketing collateral. Any website that features a lot of similarly formatted content, the manipulation of which is pivotal to the user experience, can now be very easily built and managed directly on HubSpot, as can features using geolocation data.

This allows dynamic websites to be produced where pages are generated by simply pulling one or more lines of information from a database (think spreadsheet). The information pulled from the database is then used to populate a page with content on-the-fly as opposed to manually managing the population / rendering of content in a website element manually on a per-page basis. The content can be filtered before its displayed too, meaning that we can increase the likely engagement of a page by not displaying content which we know won't resonate with the visitor. In line with HubSpot's ease-of-use mantra, adding or changing content is very easy; if you've ever used Excel (who hasn't) or Google Sheets, you'll be right at home here. This ease of presentation and management of content is hugely beneficial when considering Growth Driven Design principals.


4 Ways HubDB Will Change Your Life (Or At Least Your Marketing) For The Better

Previously, the recommended path to create dynamic pages on HubSpot was to re-purpose HubSpot's blog functionality, but in doing this developers quickly hit limitations, and the end product was often quite limited and confusing for those using it. Below are some use cases where HubDB will shine πŸ‘‡


Dr HubDub, or How I Learned to Love The Database and Stop Repeating Myself

Once upon a time marketers & developers using HubSpot's CMS were left to manage any repeating elements on a HubSpot website by using flexible columns and custom modules, meaning that repeating content on individual pages had to be directly edited every time a content addition was required. It also meant that any element with the same content had to be repeatedly populated wherever it was to be rendered. No longer! With HubDB, the content all lives in one or more tables which exist in and of themselves, meaning that the content can be used on any page without having to redundantly populate content elements. This also makes content edits a cinch! A great example of this is our people page. We created a HubDB table with columns representing name, job title, an avatar, a bio link and LinkedIn profile link, built the listing / detail template, and then as our team grows, we simply add a new row to the HubDB table. HubSpot even has a tutorial on how to put this together using HubDB.

Real Estate Listing Websites 🏘


Such websites are generally quite complex (as are real estate agents?), and would require the ability to add search parameters such as price range, location, property type (apartment vs house vs commercial etc), and then display a page of listing results based on that query. Once a property is clicked on, another dynamically generated page opens with more granular details about the property, and so forth. All this is now possible directly on HubSpot. As it happens, HubSpot has a tutorial for this as well... How convenient...


When You're Building the Next Amazon...


Okay, perhaps I'm over-promising here! Stay with me though... In the same vein as real estate websites, product websites generally require search and filtering functionality, and have many repeating elements which would be tedious to manage to the point of impossibility without a database sitting behind the scenes. With HubDB, such sites are now very straightforward to implement on HubSpot. With some external development, it would even be possible to integrate a HubDB table with Google Product Feed or similar, to prevent product data having to be redundantly maintained in multiple places.


Where in the World is Carmen San Diego? 🌏


You did play that as a kid, right? Let's say my business is involved with tourism, and I wanted to produce a listing of points of interest, restaurants, bars etc in a bunch of places in my state. HubDB has a geo-location specific data type to store GPS coordinates and also features in-built functions to calculate distances between coordinates. This means I could allow visitors to view a subset of my content by their location as received from their web browser, as well as filter by type (I like beer 🍺, lets go with bars!) and then display those results directly on a Google Map using the Google Maps API. Sound a little difficult to implement? HubSpot's ever present tutorials to the rescue again...


That's Pretty Rad.

I know, right? The introduction of HubDB means that HubSpot's CMS now has a far greater breadth of use cases it can satisfy, opening up the potential for thousands more websites able to be developed on HubSpot's Inbound Marketing platform, and for those websites to be easily maintained and personalised to maximise user engagement. The follow-on effects from this are many, principally amongst them reduced initial development time and ease of implementation of GDD strategies.


Any Juicy Technical Bits I Should Know?

For the non-technical folks, here is a fantastic eBook on Growth Drive Design which may better suit 😁 than allowing your eyes to gloss over. For the more technical folks, read on...

HubDB has brought with it API access via both HubL (HubSpot's templating language in the COS) as well as a partially CORS enabled REST API using JSON as the payload (as all HubSpot's APIs do). This is awesome, for two reasons;

  • One, HubL gives us the capability to generate dynamic pages server-side, meaning that less client-side code is required, meaning our pages will load quicker and thus our bounce rate will decrease (remember the 3 second rule...)
  • Two, the CORS enabled GET endpoints allow us to pull data from a HubDB table on non-HubSpot pages without having to use a proxy.

While HubDB will alleviate a lot of the "we'll have to build the site on WordPress, then", there will still be situations where HubSpot isn't a good fit and an external alternative will be necessary (user authentication still isn't possible, for example); now though, you can access content stored in a HubDB table within that external CMS in a simple and fast manner. If you get stuck, hit up HubSpot's community forum or integration forum, both of which are frequented by various HubSpotters keen to help you out.

Feel free to get in touch with You & Co if you'd like a hand with your database driven website.

Want to read more?