Utilities Schema Replication | HubSpot Admin HUG | October 3, 2023

James Elmer from Data Warehouse IO demos Schema Replicator, an app that copies CRM schemas between HubSpot portals. The tool lets admins and agencies replicate custom fields and objects without manual setup, saving time on multi-portal management.
Actually, with that, I'm just going to hand it over to James and let him talk to us about utilities and schema replication.
Okay, well, thanks. Thanks, Kyle. I appreciate it. Hi everyone. I see a couple of people in the chat that I've met before or spoken to before, maybe an inbound or otherwise. So that's great. Good to see familiar faces. My name is James Elmer. I'm the CTO of Data Warehouse IO. We specialize in building utility apps for HubSpot. And you may have seen our ultimate data export app in the marketplace, our HubSpot migrator app, and a couple others that are designed to make your life easier when you're playing around with your HubSpot data. What we're here to talk about today is our Schema Replicator app. Let me just go at a high level real quick on what that actually is. The Schema Replicator app, where what that allows you to do is copy the setup of your HubSpot CRM effectively and custom objects from one portal to another. It allows you to push changes that have occurred from your staging environment into your production environment, from a dev environment over into another HubSpot portal, from one HubSpot portal into another. Essentially the ability to easily copy properties, copy pipelines, folders. I'll show the full list in a minute. So it really is utility designed to make your life easier as an admin. If you're working out of a sandbox, if you are part of an agency or solutions partnership and you are trying to implement HubSpot and you have some preset sort of, you know, best practices that you want to install inside of a, inside of a developer account. So you want to just easily roll those out to save you time. That's what the app is for. And it's all self service, so you can just go, you can click a couple buttons, you can use it and it's done. It doesn't cost anything at all. So we just make it available to the community because we believe that a tool like this really is table stakes for working inside of HubSpot. So there's zero risk to using it. It just saves you some time. So let me go ahead and share my screen here and I'll walk through the process of how it works and then kind of go over some more real world use cases. Okay. Hopefully my screen is being shared now. Good. Okay. Is it? Okay, Good. Great. So this is our website. This is where you would go to use the Schema Replicator. We of course have an app Store listing as well. The app Store listing is actually I should go ahead and put that in there. HubSpot, the app store listing is part of our greater application, which is our HubSpot to HubSpot migrator. So if you're looking to use it, if you're looking for it in the App Store, you'll just search for HubSpot to HubSpot migrator to HubSpot migrator is a suite of utility applications designed to help you move HubSpot data. If you're looking for the replicator, you'll find it in here on the App Store. If you visit our website, it's got its own App listing, the HubSpot schema replicator. Here we show what schemas can be copied as more APIs are made available will enable more and more things. So right now it can do folders, company properties, contact properties, your deal properties, deal Pipeline stages, line item properties, ticket pipeline stages properties, custom objects and properties properties, association labels and engagement properties. With the announcement of the new workflows API at inbound this year that hopefully will be coming out, that was announced at partner Day, we hopefully will be allowed to do workflows in the near future. So that'll be great. You know, some of the use cases for this application are going to to be creating a developing environment that matches the scheme of your production data easily load properties from one portal into another, including moving schemas from a sandbox or a development environment into a production environment, preparing a portal for data migration using our other apps or using your own services. And you can create a preset schema in like a development environment and use this app to rapidly load a lot of that information into your clients portals. Let me show you how it works. It's very straightforward. So you'll have to make an account on our website which is free. It just takes, you know, 10 seconds. I didn't, I'm not going to go through right now, but I've created one for the purpose of this demo. So I'm going to click the get started button on the store page. This is where you'll authorize our app with HubSpot. And so I'm going to have two portals that I'm authorized with. The source portal is where your schemas are stored. So it's where you're going to copy things from. And I'm just going to select this one. Oh, that's a bad example. Apparently I love it when demos go haywire. I know why this is happening because I'm logged into a different HubSpot account so give me 10 seconds. Sorry, everyone.
If something didn't go exactly as, you.
Know, as planned, it's all good to log into this meeting. I had to switch to a different HubSpot account. Hopefully this doesn't kick me off of presenting.
I would guess it won't, but you never know.
Sorry about that, everyone.
Okay, Kyle dropped the link for the. The ecosystem link. Guys, if you're interested in looking at it while James is pulling that up.
All right, I'm going to reshare here. I've got it sorted out. Okay. All right, so back to where we were. First thing we have to do is authorize the source portal, which I will do right now. It'll redirect you back and you'll authorize the target portal. The target portal is where you're going to be copying your schemas to, and it's important to note that it copies so it doesn't delete or modify anything in the source portal at all. And you're welcome to test this out as it is free by creating a test environment and then just copying schemas to another test environment so you can see how it works. It's also able to update property changes, so if you have a pick list and you've added values to it, then it is able to push those changes to production as well. So once you've authorized your source and destination portals for the schema replication, you're able to select what parts of it you want to use, because you may not want to use them all. So for the purposes of this example, I will just turn off a couple of things so you can see how the filtering kind of works. So I'm going to enable the deal pipeline migrate, the deals migration, the contacts migration, and we'll just do this. So when you check these boxes, it basically is determining which one of these things you want to migrate. If a box is forced to be gray, that means that it's dependent on other things. So you couldn't do your custom object definitions without. You can't do, like, custom object pipelines without having a custom object to associate those pipelines with. So the user interface sort of helps you prevent making errors. The last step in the replication is you can actually pick which deal pipelines you want to move. So you may not want to move them all. You might have a test environment with 10 different pipelines you use for a lot of different scenarios. If you've got customers across different industries, and you're always setting up some default pipelines for them for whatever reason, you can pick which pipelines you want to move. So I'll just select the this HubSpot payments or I guess I'll this this pipeline right here and I will let all the items pipelines move forward. Items is the name of our custom object. So you can also define custom object pipelines as well. And then I'm going to click Continue to checkout. At this phase it is free, but we do have this little checkout process embedded for all of our apps so you don't have to pay any money at this point or ever when using this app. But I'm going to put some information here to check out real so I'm going to go ahead and place the order for the schema replication. What's going to happen is I can't share this because I can't share my email with all you guys, but you'll receive an email shortly after checkout and it's going to say your schema replication has started and within generally 2 minutes, 3 minutes the schema replication will be completed. So while that runs, I'm going to stop sharing for a moment here and I am going to go over some of the use cases and then I'm going to share my screen and you guys will be able to see sort of the results of this replication. So a couple of good use cases for this app I've mentioned, I've touched on them a little bit so far is if you have a customer who's going through an acquisition and they have another HubSpot portal, you're able to copy all the properties from the HubSpot portal they're acquiring into their destination portal so that you can easily get started on rebuilding workflows, building out custom processes for them, lists, website pages. You can start the process of implementing the merge portal long before you do a migration. Whether you use our app, whether to do the migration of the data, whether you use someone else, whether you do it yourselves, it doesn't matter. This saves you time because you don't have to manually copy things over. We have some users who have copied hundreds of properties from one portal to another, as I'm sure some of you have experienced one point another having to do that manually or through a list load or through a contact list load is very cumbersome and time intensive. This is really just an easy way to handle that, especially if you're needing to deal with a customer who has acquisitions and consolidations. Another way you could use this is for spinoffs. So if someone's if a business unit is leaving a Portal or a group is leaving a portal, you can spin the information out of that portal into a new one. And then of course there are use cases for if you are needing to implement a new HubSpot portal and you're an agency and, and you want to set up a environment that you can have created already ready to go, that you know, that you like to use when you're building out reports, dashboards, things like that. You have a series of fields that you'll use after you plug in, you know, Google Analytics or Facebook or whatever you do as part of your work processes. So let me share my screen again because it should be done by now. Okay, here we go. Share screen. Oh, okay. So I am inside of the source portal and I'm just in the Properties tab for the source portal. And you can see we've got, you know, 337 contact properties and that's how many exist right here. We're going to go over into the Contact properties tab in the destination portal and it looks like there's three did not move. Sometimes properties can't move if they are part of like a HubSpot feature or something you've enabled, for example, currencies. So if you have not enabled currencies inside of your destination portal, then things related to currencies weren't moved. Generally, properties that are created, properties that are created as part of feature additions in HubSpot are not something we can replicate. So certainly all of the custom properties and the standard properties that are altered can be moved. But if you've activated like Operations Hub Pro and you've got a bunch of data points that are calculated as formulas, now we can't circumvent HubSpot licenses with this app, fortunately and unfortunately, depending on who you are. But you can see we've replicated over a lot of these custom properties. We've got these things that are created by the migrator, it says who created them, which was me, because I ran it. If you were to go inside the audit logs inside the portal, you can see the application and the person that ran it is responsible for the creation and update of all the definitions of these properties. If I go over to deals, if you'll remember, we filtered out to just do specific pipelines. So you can see that we just migrated the one pipeline. This is the one. The sales pipeline is the default pipeline that's in every portal. So we just migrated this one pipeline. And if we open up the pipelines section, you can see that we've got the state these stages that we had set up in the source portal and if we had chosen tickets, it would have done the ticket pipeline the same way. The other properties, folders, things like that, are moved as well. And that's pretty much all there is to it. Once the schemas move over, you can run it again if you need to push another batch of updates. That's pretty much it for the demo of how it works. It's a very, very simple application. It's got a lot of good real world use cases where you can save yourself and your team a lot of time setting up, you know, a test environment or, you know, predetermining. Hey, when we, when we, when we implement our HubSpot portals for all of our customers, we always put these fields in because we use them to calculate revenue or we encourage our customers to, you know, utilize these steps in order to improve adoption. You know, so if you've got some like adoption fields where it's like, you know, you wanted to calculate in there, it does move formulas as well, which is really nice because formulas can have a lot of hair on them. If you've got a series of custom properties that you have and they all calculate into some really cool formula that is calculating a customized lead score or something like that that you use internally, this will move all of that over. Really think of this application as just a big time saver. As more and more HubSpot APIs are opened up, we fully intend to add more and more functionality to it. So that's all I've got for the demo and explanation. Kyle, if we wanted to move to the a little bit of Q and A, I think that would be good.
Yeah. So if you all look at the Q and A, Charles has been busily answering questions as they come in, leaving very little for James to talk about. But there is one in particular that Charles said he'd leave for you. Michelle says. Wait, hold on. Am I understanding that I can build and test in Sandbox now and use this tool to push to production and hopefully not disrupt production?
Yes, that is correct. Yep, that's exactly what you can do. So you can build inside of Sandbox. You know, there are, there are some limits, like we can't do workflows right now and I really hope that there's a new API that they've talked about coming, that's going to come soon and the moment that that is stable, we will implement that and just sort of give that away. Because again, we do believe a tool like this is table stakes and that everyone benefits by having access to it. So we will continue to give this version of our Migrator app away forever. We'll never charge for it, but yeah, it allow you to test and build out in the sandbox and push your updates and changes into producing. This isn't available yet, but we are working on property group filtering too and the ability to let you select specific custom objects because we know that sometimes you might have a bunch of things going on in a sandbox and you don't necessarily want to move all of them over yet. If you guys are interested in using the app and, and you use it and you have feedback like, you'll find that our team is very receptive because we just want to make the best utilities for people in HubSpot. That's all we do at data warehouses, only build things for HubSpot. Cool.
Sort of a follow up to that question. Can you talk to us about pushing data to a dev account and then pushing back to production after making changes in the dev account?
So we have to be careful when we say data because that makes me think one thing, right? So just to level set, when I think, when we say data I think of like record the records. So like if you have 100,000 contacts, you're migrating 100,000 pieces of data. That's data and we can do that. But that's not what the replicator does. The replicator is just the schemas. So I believe that's what you're asking about. But to do that, I mean it's pretty straightforward and it's certainly possible you can create a HubSpot app developer account if a sandbox isn't an option and you can push all of your properties over if you wanted to move the data over. Our Migrator app is able to move all the data over and then you could do a bunch of changes to that in there, manipulation, et cetera, et cetera, and then push that back into prod and it would apply the updated changes back to the original records. There's a little bit of hair on that exact situation that I've just described for a couple of things. But you know, that might be like, I don't want to get too into the weeds. So I would love to hear that use case if I've described it correctly, you know, just shoot us an email and happy to discuss that with you. We certainly have people do like one of the things that we have a lot of customers do is they'll use our schema replicator to copy all of their schemas out of a portal into a dev account or something, and they build out an integration that's connected to those so they know that the integration is working. If they've got a Salesforce integration or something, or QuickBooks or whatever, and you want to make sure that all the data is being manipulated in the right way and the right fields are being updated, you can test those sort of those development efforts and then once you know it's working right, you can just move those properties all back into production with the changes that you've made and then turn your integrations on so you know they're working and you could do the same thing with the data as needed. We have several customers who have used our schema replicator and data migrator to test out like a complex integration situation inside of a developer account where you've got like two or three integrations that are all going to be playing together and you want to make sure the updates between all of them are firing off correctly without affecting production. And it's just a cool thing you can do. Do we have any other questions?
Charles is just an overachiever.
I think, Charles, you've taken my glory.
I think they've all been answered.
We could go through them and. And just speak them out out loud, I guess for sure.
That might be good recording. Let me. I don't know, I'll go through and see if. I'll just see if we can find some of them here. Got to get past all the. Hey, everyone's first.
Yes. Okay, Nick, Charles, come on and explain all his answers.
Yeah, sorry.
Yeah. So Q and A is in a separate tab, James. There's lots of buttons.
Oh, it's in a separate tab.
Yeah, separate from there.
Oh, See, I'm a noob to this. Okay. Any way to diagnose would happen to have the replication. Yeah. So I believe I showed it briefly, actually. But if you have HubSpot Professional or above. I think it's in professional now. Used to be Enterprise only, but I think it's in professional now. The system. The system audit area allows you to see all of the updates and changes that have occurred as part of the app, if necessary as well. We can also provide logs as well. But generally speaking, most people that get the logs once they go, okay, it's pretty straightforward. It's like quantity and counts and things. The best way to see what happened is to use that system audit section in HubSpot, which keeps a track of all changes. If there isn't a workflows API, how does super get it in there? Well, that is a great question. I know the answer. Okay, super uses Chrome plugin and user impersonation. I don't know how else I'm supposed to answer that, Kyle. I'm sorry. They use Chrome plugin and user impersonation. So it's not using APIs. It's not something we're interested in doing for one reason or another. If you want to know more, you can ask me. Sorry.
No, I appreciate you taking on that question because super is not your app.
I mean, I know how, but I just. It's not something we're going to do. If you want to know why, you can message me the. Oh, I think. Yeah, okay. I think that's all the questions now. Unless I have. Oh, does this create migrate lists and workflows? Hey Daniel, it's good to see you again. It was great to see you at Inbound, if you're still in here. It migrates. We do not migrate lists as part of the schema replicator because those require data for the most part. It's something that you might be able to convince us otherwise, but like static lists, all reference things that already exist. The contacts or deals or whatever. We could be convinced to enable a version that did active lists if enough people were interested in that specifically. Yeah. So I see another question in here by Mary Beth. Can we use this tool to copy and duplicate entire deals in the same portal? No, we can't copy deals in the same portal, but there is a great app by happily called Clone Attack that I would recommend you go and look at. Happy to recommend an app for someone else because they will do that with. It's called Clone Attack and they can copy deals in the same portal, I think is what you're asking. We can copy them from one portal to another, but not within the same portal. Scott Penwood asks, does this migrate websites built and hosted on HubSpot CMS Hub Enterprise? It does not. It's something that our team is looking into the viability of is. There's a lot of hair on that. There's a lot of aspects to that. The APIs for the CMS have gotten to be very, very powerful. So stay tuned is what I'll say. Because if we do do that, we'll know within the next several months here and we'll be emailing anyone who's used our services before to say, hey, we can do this thing now. Salim asked, does it need a source to copy from? If that's the case, can it copy from demo accounts? Yes, it can copy from demo accounts. And the second part of his question was, do the source portal and destination portal have to be on the same tier of HubSpot? So no, it does not. Right. That's a great question. Thank you for asking. So if you're going from like a free account, you can go into an enterprise account. If you're going from an enterprise account, you can go into a free account. It doesn't matter. The only thing that affects that, and I briefly touched on this earlier, is we can't recreate things that are created from license levels in HubSpot, right? So if you've got access to a series of formula fields or some properties that are only available in enterprise, we can't remake those because we can't circumvent licensing limits in HubSpot. This also applies to pipelines, right? So if you try and replicate your schema from a enterprise portal into a free portal, it's only going to let you do one pipeline. Right. And depending on the license level of HubSpot, that's going to go up and up and up. I think that, that. Let me see what else.
We used to have an upvote option and it made it a little easier to sort the Q and A. So if you guys have any other questions, feel free to put them in there or put them in the chat so that we can make sure we get your questions answered.
One final question I'd like to ask you, James, if people want to get in touch with you, what's your preferred method for them to do that?
To get in touch with me, I guess probably just my email. I don't know if there's a way to like post that here, but that's fine. That's what I check the most. I'm a bit neurotic. I check my email way too much. I'm also on LinkedIn. I'm not as fast on LinkedIn. You could just look up James Elmer, data warehouse on LinkedIn. Those are two ways to get a hold of me. The other way to get a hold of the team as a whole, which honestly is the best way to get ahold of someone if you have questions, because that way you'll have the fastest response time is to just visit our website, which is Data Warehouse IO. I don't know if I. If that's somewhere Kyle or I need to put that somewhere, but you can just submit a ticket on the help desk, a sales request, you know, whatever, and one of our team members will get back to you as soon as possible. Aaron asks, is there a Roadmap for workflow replication. This has everything we need. Except this also love how this is free. Well, I love how it's free too, because everyone should have access to this. I really do believe that. I think that it's a key tool for everyone who's working in HubSpot to be able to have access to utilities. Just to give a little background when I say utilities, I believe that utilities are things that should be cheap and readily available or even free. Right? You know, water, electricity, things like that. They are required to survive, so to speak. Right. I think that if HubSpot, as HubSpot continues to evolve and get more, more complex utilities like this will become required. Maybe not to survive, but to thrive certainly. Because as more and more things are added, as complexity increases, you, as someone who's working in HubSpot, your success is determined based off of really the speed and efficiency that which you can roll these things out. In particular if you're part of a, in particular if you're part of like an agency or solutions partnership and you're trying to find ways to like save time because you guys know like that's where you guys make your money. Especially if you're, if you're billing in like a fixed, you know, increment the. I'll reiterate on one thing because I think I know it was answered live. But Aaron, Aaron asks again, there is a rough road Ward Mac roadmap for workflow replication. The answer to that is as soon as the new version is, is in a stable beta, which you know, there's not a, there's not a roadmap at this time that I can share, but not like an unreasonable amount of time like in the grand scheme. I will say people have been asking for a version of this for a long, long, long, long time and you will not have to wait equivalently long or even close in order to start playing with stuff like that using the, the APIs that are publicly listed and documented using OAuth 2.0. Salim asked another question. If you're using this tool on a non greenfield portal, will it overwrite existing properties? It's a good question. If the properties match. If the properties match exactly, it's going to append an update where possible. So if you've got like a good example would be industry, right? So if you have an industry field and it's got, you know, oil and gas and medical in your source in your destination portal, but in your source portal your industry field has fast food, then after the replication is complete, it's going to have oil and gas, medical and fast food. It's going to append that extra option on there. And that is going to happen based off of a combination of the property name and the internal name. Those two things have to match in order for that to occur. Am I going to comment on the football helmet logo? Well, normally I blur my screen, but. Go Texans, I suppose. Yeah, we're located down in Houston, Texas. That actually, that helmet is from season one. Signed by the quarterback of the first year, who I. I want to say it was J.J. watt, but I. I could be wrong because it's been a long time. Okay, any other questions? You got them all here? We got one more.
Yep, one more popped in.
Okay, Matthew, if you have implemented a similar setup of a portal and are working with a company in a similar field, could you use your tool to help with the build? Yeah, yeah, of course, if you are. If that's your situation, then yeah, absolutely. I think that, like, if you're in a specific industry and you've helped a client in a specific industry build a lot of industry specific metrics and fields, and with their permission, you're able to push that out to a dev environment or something like that, where you can then use that again in multiple places or even in a master distributed relationship. It could be useful. If you're working with Sony and they need to connect data to 15 portals and you're the lucky one that's implementing all of them, you could very easily push a set of properties between all of those and save yourself a lot of time. Yep, our tool can help with that.
Very cool.
Great. Well, thank you, James, so much and thanks everyone for being here. I don't feel bad giving people 20 minutes back to their day, but if anyone is interested in once again experimenting with a little bit of breakout room networking, I'm happy to facilitate that. So, James, you're welcome to stay on or welcome to hop off, whatever, whatever you prefer. But yeah, everyone, thanks for being here. I'll give it a minute. I'll give it one full minute for everyone who wants to leave, to leave. And then everyone else I will put into breakout rooms.
And I did. I dropped the profile link. If you guys could just let us know if there's anything that you're really interested in hearing from. You know, if someone you want to hear about, please let us know so that we can make sure they get on the screen with you.
Yeah, I hope that there are going to be people that are able to leverage this app to save themselves some time.
That'd be great for sure.
We live and die by our automations at Data Warehouse IO. A very lean company, low overhead thanks to HubSpot CRM. We built some pretty cool workflows in there that are really good at onboarding for some of our other apps and partnerships and all kinds of things that we do. I probably should have mentioned we had a partner program, but I'm not here trying to plug things. I was just here to share about that app.
No worries.
Seeing lots of love and gratitude in the chat. I think people liked what you showed them.
Oh, that's great. Oh, I didn't click on the chat. Oh. Everyone said thank you. I feel bad for not saying, you're welcome now. I'm not used to this platform. I was sitting inside the Q and A still. I thought it was very strange.
Disorienting to everyone who uses it.
Yes, us too. And we use it every week, so for sure. All right.
Sean, I'm sorry if I sinned and I said the wrong name. It's. I literally got that helmet when I was like, I don't know, 13 years old. It's been 20 years. I really don't remember. It was at their first. Got that helmet at their first training. Like training day. Open to the public before regular season started. Like season one, their first season rather. But I've kept it around because it's a good. It makes it good for decoration. It's not worth anything. Texans, they had a good couple years, but it's been rough.
All right, I'm gonna send us all into breakout rooms now. Let's see how this goes.
Okay, let's see how this goes.
I clicked the button and nothing happened. Oh, okay.
Oh, okay. Join now.
All right.










