Clone a static site to HubSpot

We have a (mostly) static site hosted with another CMS platform. We want to move everything to hubspot, so ideally we would just copy all the HTML, bulk replace all the references to externally hosted .css, .js and images, and host them in hubspot instead.
Fortunately, our external site is less than 40 pages so this would be doable. And we don’t need the site to be very scalable either.
Unfortunately, it doesn’t seem like we can get around the way sites are structured in hubspot.
This question has come up before, and it seems like there is no easy answer. https://community.hubspot.com/t5/CMS-Development/Cloning-a-web-site-to-sandbox/m-p/419296
So instead I am looking for the most practical answer given the limitations.
My current approach is:

  1. create an empty/boilerplate theme with the CLI
  2. put the header and footer of our old site (same on every page) in base.html
  3. host all images, css, and js with files hosted in hubspot and replace all references to them. Do not replace relative url’s since they should still work
  4. create a template for every page and put all the rest of the HTML in there. Again, making sure to replace url’s.
  5. set up a temporary domain and create all the pages there
  6. move the dns to hubspot and switch domains: Replace your brand domain

Definitely a bit error-prone, and step 4 seems hacky. Can anyone advise if there is a better way to transfer an entire site to hubspot?

Hi @DDeDecker I’m curious why you would move your “static” website to HubSpot rather than take advantage of any of the features CMS Hub offers.

Building out the static site with the method you described would take more time and energy than choosing a theme from the marketplace (free or paid) that will suit your needs and building out the content using the theme.

This would make your website easier to manage on the front end, you wouldn’t have to endure the pain of managing the theme to adapt to code changes.

A few things to consider:

1 - HubSpot used to do this years ago, they would actually migrate your website for you, but customers hated it (me and my former company included) because everything was handled via code, you couldn’t change the wording on a page without editing the coded template.

2 - HubSpot now offers Website Migration via the theme of your choice. If you are a new customer to HubSpot, you can request a quote for a website migration. It’s $500 setup + $20/page and takes 2-3 weeks.

With 40 pages, you’re talking about $1600 plus the cost of the theme - and there are hundreds of themes, from free themes to more robust pro themes around the $500-1000 and even more industry specific themes that go much higher.

3 - Unless you’re planning to use CMS Hub Free and you’re trying to cobble the website together on a shoestring budget, you’re already planning to spend money for CMS Hub, so why wouldn’t you want to take advantage of what makes it so powerful?

I’m happy to help talk through your approach and provide recommendations if you still decide its best, but I can think of a million reasons you don’t want to do that. :face_with_peeking_eye:

Hi @Jnix284,
Thank you for your concern. I suppose I did not provide full context as I didn’t expect the question to be challenged. Rest assure we are using most features in the CMS hub for our actively maintained websites. This ‘static’ website is just a special case where we already have an in-house designed css theme. The site itself is a showcase of a temporary campaign that is only updated in limited ways. If we need to make it more dynamic, we know how to add modules so parts of the site can be changed from the editor, but initially that’s not needed. We don’t want to redo the work to design the website, just clone it so we no longer depend on the previous CMS subscription.
Now that we are in the process of cloning, it seems like using (partial) templates is indeed the way to go. The biggest challenge has been replacing all url’s to resources on the old CMS but bulk edit tools help with that.

@DDeDecker thank you for sharing more about your specific use case, that is very helpful and I can see why you might take this route instead.

I’m glad you were able to get a working solution with the partial templates, I can certainly relate to the pain of having to replace all of the URLs :grimacing: