# How convert a custom local module to a global module?

**URL:** <https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117>\
**Category:** CMS Development\
**Tags:** free\
**Created:** [August 17, 2022, 9:23am UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117 "2022-08-17T09:23:32Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![OksanaR](https://avatars.discourse-cdn.com/v4/letter/o/77aa72/32.png) [@OksanaR](https://community.hubspot.com/u/OksanaR)\
**Post date:** [August 17, 2022, 9:23am UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/1 "2022-08-17T09:23:32Z")

</div>

Hi guys, I’m new to HubSpot.  
I have a custom local module, I need to make it global.  
I read [this](https://knowledge.hubspot.com/design-manager/use-global-content-across-multiple-templates#create-new-global-content-in-the-design-manager) but it doesn’t work for me, I don’t see any more buttons in the inspector where I can convert my module

 ![OksanaR_0-1660728033508.jpg](https://d2qpr2jzcazej7.cloudfront.net/original/3X/9/2/92e11c2244a31c5149abe1b2e2adc4a4542daa37.jpeg)

---

<div class="post-metadata">

**Author:** ![Anton](https://d10pqhm3lwygmk.cloudfront.net/user_avatar/community.hubspot.com/anton/32/103167_2.png) [@Anton](https://community.hubspot.com/u/Anton)\
**Post date:** [August 17, 2022, 10:34am UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/2 "2022-08-17T10:34:01Z")

</div>

Hi @OksanaR,

you can do it by modifing the meta.json file via [local development](https://developers.hubspot.com/docs/cms/guides/getting-started-with-local-development)

It will look something like this

```lia-code-sample
{
 "label": "My custom module",
 "css_assets": [],
 "external_js": [],
 "global": false,
 "help_text": "",
 "host_template_types": [
 "PAGE",
 "BLOG_POST",
 "BLOG_LISTING"
 ],
 "js_assets": [],
 "other_assets": [],
 "smart_type": "NOT_SMART",
 "tags": [],
 "is_available_for_new_content": false
}

```

if you change it like this,the module will be global

`"global": true,`

**BUT: unless you have all settings predefined as default values, you’ll lose them.**

best,

Anton

---

<div class="post-metadata">

**Author:** ![OksanaR](https://avatars.discourse-cdn.com/v4/letter/o/77aa72/32.png) [@OksanaR](https://community.hubspot.com/u/OksanaR)\
**Post date:** [August 17, 2022, 12:15pm UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/3 "2022-08-17T12:15:03Z")

</div>

Thanks for the solution, but I’m not using local development yet.  
Therefore, I solved my problem like this: I created a new global module, copied the code there and created the necessary fields))). It wasn’t difficult because my custom module has few fields, but if there were a lot of them, this method wouldn’t work.  
So thanks for the tips, I’ll try to use them

---

<div class="post-metadata">

**Author:** ![BarryGrennan](https://d10pqhm3lwygmk.cloudfront.net/user_avatar/community.hubspot.com/barrygrennan/32/97794_2.png) [@BarryGrennan](https://community.hubspot.com/u/BarryGrennan)\
**Post date:** [August 17, 2022, 11:38am UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/4 "2022-08-17T11:38:19Z")

</div>

The local dev method @Anton suggests is the way to go!  
A quick note though, if you think there’s a posibility that you’ll need the local version again down the line, I’d save a copy of it.

There’s a bug a few of us have encountered in that scenario. Quoting @Stephanie-OG who described the bug succinctly:

> When you change a module’s parameter from “global”: true to “global”: false in the meta.json file, in the editor it’s no longer showing the global overlay, but when you click into it it has the “The creator of this template prevented editing this module in the content editors.” message.

Don’t know if that bug still exists. But it did 3 months ago and a year ago in my case.

I was able to use revision history to roll back to a pre-bug state, but that might be a pain in the \*\*bleep\*\* if you’ve made substantial changes to your module by then.

* * *

 ![profile2022a.jpg](https://d2qpr2jzcazej7.cloudfront.net/original/2X/7/7273a34ccfe3489fceebc8a36eca751481b59531.jpeg)

**Barry Grennan**

[Freelance HubSpot CMS Developer](https://www.seoanseo.ca?utm_source=HubSpotCommunity)

[Website](https://www.seoanseo.ca?utm_source=HubSpotCommunity) | [Contact](https://www.seoanseo.ca/#contact?utm_source=HubSpotCommunity)

---

<div class="post-metadata">

**Author:** ![OksanaR](https://avatars.discourse-cdn.com/v4/letter/o/77aa72/32.png) [@OksanaR](https://community.hubspot.com/u/OksanaR)\
**Post date:** [August 17, 2022, 12:15pm UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/5 "2022-08-17T12:15:41Z")

</div>

Thanks for the tips, I’ll try to use them

---

<div class="post-metadata">

**Author:** ![Albusis](https://d10pqhm3lwygmk.cloudfront.net/user_avatar/community.hubspot.com/albusis/32/44597_2.png) [@Albusis](https://community.hubspot.com/u/Albusis)\
**Post date:** [November 12, 2023, 7:41pm UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/6 "2023-11-12T19:41:12Z")

</div>

I feel your pain. The bug is still there, although…

When you open the JSON file of that module, it will have for every subsection a parameter “locked: true”. In my case, I just went through the file and marked it all as “locked: false”

 ![Albusis_0-1699818040815.png](https://d2qpr2jzcazej7.cloudfront.net/original/2X/c/ce32ba8d10c96acf2aae79942fc1e91c8b9e1232.png)

and hey, now I can edit it 🙂

---

<div class="post-metadata">

**Author:** ![tone4407](https://d10pqhm3lwygmk.cloudfront.net/user_avatar/community.hubspot.com/tone4407/32/9373_2.png) [@tone4407](https://community.hubspot.com/u/tone4407)\
**Post date:** [May 11, 2023, 6:58pm UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/7 "2023-05-11T18:58:12Z")

</div>

I was able to fix this issue by removing:

`"locked" : true,`

from all of the fields within the fields.json file.

This fix has to be done via the CLI.

---

<div class="post-metadata">

**Author:** ![helloteichner](https://d10pqhm3lwygmk.cloudfront.net/user_avatar/community.hubspot.com/helloteichner/32/39426_2.png) [@helloteichner](https://community.hubspot.com/u/helloteichner)\
**Post date:** [June 6, 2025, 11:07am UTC](https://community.hubspot.com/t/how-convert-a-custom-local-module-to-a-global-module/63117/8 "2025-06-06T11:07:34Z")

</div>

@OksanaR @BarryGrennan @Albusis @Anton @tone4407

I ran into the same issue many times and decided to build a small tool to make the process easier. It’s called [**Hub Module Convert**](https://hubmoduleconvert.com) – and as the name suggests, it does just that 😄

It’s just launched and currently in public beta. If you’d like to give it a try (and maybe share some feedback), feel free to email me at [chris@hubmoduleconvert.com](mailto:chris@hubmoduleconvert.com) and I’ll set you up with a free account.

Thanks,  
Chris
