Skip to main content
Print

Deploy a Managed Bookmarks Folder to Edge, Chrome and Firefox via Group Policy –

One Group Policy Object (GPO) pushes the same read-only bookmarks folder (for example, “Company Links”) to the bookmarks bar of Microsoft Edge, Google Chrome and Mozilla Firefox on domain-joined Windows machines. All three browsers accept the same JSON format, so you write the bookmark list once and paste it into three policies.

BrowserPolicy name (GPO)Policy name (registry/JSON)Where the folder appears
Microsoft EdgeConfigure favoritesManagedFavoritesFavorites bar
Google ChromeManaged BookmarksManagedBookmarksBookmarks bar
Mozilla FirefoxManaged BookmarksManagedBookmarksBookmarks toolbar

Users can open the managed links but cannot edit, move or delete them. Their personal bookmarks are not touched.

Prerequisites

  • Domain admin rights, or rights to create and link GPOs and write to the SYSVOL Central Store.
  • Group Policy Management Console (GPMC) on a domain controller or an admin workstation with RSAT.
  • The ADMX/ADML templates for each browser:
    • Microsoft Edge policy templates (download from the Microsoft Edge for Business page).
    • Google Chrome Enterprise policy templates (the “Chrome Enterprise bundle” or the policy templates zip).
    • Mozilla Firefox policy templates (the policy-templates release on Mozilla’s GitHub).
  • Firefox 83 or later for the ManagedBookmarks policy. Firefox ESR is recommended for managed fleets.
  • An OU containing the target computer (or user) accounts.

Step 1: Add the browser templates to the Central Store

The Central Store makes the templates visible to every admin who edits GPOs in the domain.

  1. If it does not exist yet, create the folder \\<domain>\SYSVOL\<domain>\Policies\PolicyDefinitions.
  2. Copy the .admx files into PolicyDefinitions:
    • Edge: msedge.admx and msedgeupdate.admx
    • Chrome: chrome.admx and google.admx
    • Firefox: firefox.admx and mozilla.admx
  3. Copy the matching .adml files into the language subfolder, for example PolicyDefinitions\en-US.
  4. Close and reopen GPMC so it reloads the templates.

Tip: when updating templates later, overwrite the existing files with the newer versions. Newer templates add policies; they do not break existing settings.

Step 2: Create and link the GPO

  1. Open Group Policy Management (gpmc.msc).
  2. Right-click Group Policy Objects and choose New. Name it, for example, Browser - Managed Bookmarks.
  3. Right-click the target OU and choose Link an Existing GPO, then select the new GPO.
  4. Right-click the GPO and choose Edit to open the Group Policy Management Editor.

This article configures everything under Computer Configuration, so the folder appears for every user on the machine. To target people instead of devices, use the same policies under User Configuration and link the GPO to an OU of user accounts.

Step 3: Build the bookmarks JSON

All three browsers read the same structure: a JSON array whose first entry names the top-level folder, followed by links and optional subfolders.

Readable version (for editing and review):

[
  { "toplevel_name": "Company Links" },
  { "name": "Intranet", "url": "https://intranet.contoso.com" },
  { "name": "Service Desk", "url": "https://helpdesk.contoso.com" },
  {
    "name": "HR",
    "children": [
      { "name": "Payroll", "url": "https://payroll.contoso.com" },
      { "name": "Benefits", "url": "https://benefits.contoso.com" }
    ]
  }
]

Single-line version (paste this into the GPO text boxes):

[{"toplevel_name":"Company Links"},{"name":"Intranet","url":"https://intranet.contoso.com"},{"name":"Service Desk","url":"https://helpdesk.contoso.com"},{"name":"HR","children":[{"name":"Payroll","url":"https://payroll.contoso.com"},{"name":"Benefits","url":"https://benefits.contoso.com"}]}]

Rules:

  • toplevel_name sets the folder name. Without it, Edge shows “Managed favorites” and Chrome shows “Managed bookmarks”.
  • Every link needs name and url; every subfolder needs name and children.
  • Use full URLs including https://.
  • Validate the JSON (for example with a JSON linter or ConvertFrom-Json in PowerShell) before pasting. One missing comma or quote makes the whole policy fail.

Step 4: Configure Microsoft Edge

  1. Go to Computer Configuration > Policies > Administrative Templates > Microsoft Edge > Favorites. (In older template versions the policy sits directly under Microsoft Edge.)
  2. Open Configure favorites (ManagedFavorites).
  3. Select Enabled and paste the single-line JSON from Step 3 into the text box.
  4. Click OK.
  5. Optional, so users see the folder without opening the menu: under Microsoft Edge, open Enable favorites bar (FavoritesBarEnabled), select Enabled, and click OK.

Resulting registry value: HKLM\SOFTWARE\Policies\Microsoft\Edge\ManagedFavorites (REG_SZ).

Step 5: Configure Google Chrome

  1. Go to Computer Configuration > Policies > Administrative Templates > Google > Google Chrome.
  2. Open Managed Bookmarks (ManagedBookmarks).
  3. Select Enabled and paste the same single-line JSON into the text box.
  4. Click OK.
  5. Optional, to show the bar: open Enable Bookmark Bar (BookmarkBarEnabled), select Enabled, and click OK.

Use the policies under Google Chrome, not Google Chrome – Default Settings (users can override), so users cannot remove the folder.

Resulting registry value: HKLM\SOFTWARE\Policies\Google\Chrome\ManagedBookmarks (REG_SZ).

Step 6: Configure Mozilla Firefox

  1. Go to Computer Configuration > Policies > Administrative Templates > Mozilla > Firefox.
  2. Open Managed Bookmarks (ManagedBookmarks).
  3. Select Enabled and paste the same single-line JSON into the text box.
  4. Click OK.
  5. Optional, to show the toolbar: open Display Bookmarks Toolbar (DisplayBookmarksToolbar), select Enabled, and choose Always if your template version offers that option.

Resulting registry value: HKLM\SOFTWARE\Policies\Mozilla\Firefox\ManagedBookmarks (REG_SZ).

Alternative: the older Bookmarks policy (Bookmark 01 to Bookmark 50) adds individual links with a Title, URL, Folder and Placement (toolbar or menu). Use it only for Firefox versions older than 83, or if you need to set favicons. Unlike ManagedBookmarks, these links are not locked, and a user can delete them until the next policy refresh adds them back.

Step 7: Apply and verify

  1. On a test machine in the target OU, run gpupdate /force from an elevated command prompt.
  2. Run gpresult /r /scope computer and confirm the GPO is listed under Applied Group Policy Objects.
  3. Fully close and reopen each browser, then check its policy page:
BrowserPolicy pageWhat to look for
Edgeedge://policyManagedFavorites, status OK
Chromechrome://policyManagedBookmarks, status OK
Firefoxabout:policiesManagedBookmarks under Active
  1. Confirm the “Company Links” folder appears on the bar and that right-click offers no edit or delete options.

In Edge and Chrome, Reload policies on the policy page applies changes without restarting the browser. Firefox reads policies only at startup.

Troubleshooting

SymptomLikely causeFix
Policy page shows an error or “invalid JSON”Syntax error, smart quotes, or line breaks pasted into the text boxRe-validate the JSON and paste the single-line version with straight quotes
Policy not listed on the policy pageGPO not applied to the machineCheck the OU link, security filtering and WMI filters; run gpresult /h report.html
Policy listed but no folder visibleBookmarks bar hiddenEnable FavoritesBarEnabled / BookmarkBarEnabled / DisplayBookmarksToolbar, or open the bookmarks menu
Firefox ignores the policyFirefox older than 83, or an outdated ADMXUpdate Firefox and the Mozilla templates; restart Firefox
Firefox shows the policy under ErrorsFirefox also has a policies.json file in its distribution folderRemove or align policies.json; GPO and file policies can conflict
Text box rejects or truncates a long listADMX text field length limitDeploy the same string with Group Policy Preferences > Registry, using the registry paths in References
Folder name shows “Managed favorites” / “Managed bookmarks”toplevel_name missing or misspelledAdd {"toplevel_name":"Company Links"} as the first array entry
Changes not showingBrowser cached the old policygpupdate /force, then Reload policies (Edge/Chrome) or restart Firefox

References

Registry locations (all REG_SZ containing the single-line JSON; use HKCU instead of HKLM for per-user deployment):

BrowserKeyValue name
EdgeHKLM\SOFTWARE\Policies\Microsoft\EdgeManagedFavorites
ChromeHKLM\SOFTWARE\Policies\Google\ChromeManagedBookmarks
FirefoxHKLM\SOFTWARE\Policies\Mozilla\FirefoxManagedBookmarks