If you’re working on WordPress projects with multiple environments like local, staging, and production, you know how frustrating it can be to keep Advanced Custom Fields (ACF) field groups in sync.
I’ve written before about ACF and why I rely on it for nearly every custom project. While there are other tools for creating custom fields, the PRO version of ACF covers almost everything I need as a developer building templates for clients.
One powerful feature in ACF PRO is ACF Synchronized JSON. It lets you version-control your field groups and sync them between environments without needing to export and import files manually or rely on database copies.
By the way, there’s an alternative called CMB2 for creating metaboxes and custom fields, but it doesn’t offer the same user-friendly interface or automation as ACF.
The Days before ACF Synchronized JSON
Previously, if I created a new field group in ACF and needed to transfer it to another WordPress site, such as staging or production, I had to export the group manually and import it into the new environment using ACF’s tools.
Even small changes, like adding a single new field, often meant repeating that action manually on every site. This process wasn’t especially difficult, but it was time-consuming and left room for error when dealing with many fields.
What Is ACF Synchronized JSON?
The Synchronized JSON feature automatically saves your ACF field groups as JSON files inside your theme. This allows you to treat your field definitions like code, track changes with Git, and easily share them across installations.
Whenever you edit or save a field group, ACF will write a JSON file to your theme’s folder. Then, on another site, you can sync those fields directly from the WordPress admin—no export/import needed.
How to Enable Synchronized JSON
To activate this feature, create a folder named acf-json
inside your active theme directory:
// Path: your-theme/acf-json/
For security, add an index.php
file with this content:
<?php // Silence is golden. ?>
From now on, any field group you create or edit will be stored as a JSON file in this folder.
Where Are the Files Stored?
Each field group will appear as a separate JSON file. These files are named after the group’s unique key and include all its field settings. They’re ideal for version control and collaborative development.
How to Sync Fields on Another Installation
To reuse the same fields on another site:
- Copy the
acf-json
folder into the theme folder on the new site. - In the WordPress admin, go to
Custom Fields > Field Groups
. - If ACF detects JSON files not yet loaded, you’ll see a “Sync Available” tab.
- Select the groups you want to sync and click “Sync.”

Why Use ACF JSON?
Here are the main reasons developers love this feature:
- Version Control: Store ACF field changes in Git with your theme files.
- Faster Deployment: Sync field changes without touching the database.
- Team Collaboration: Share consistent field groups across teams or environments.
- Traceability: Track exactly when and how a field was modified.
ACF JSON makes your field structure part of the codebase instead of just the database. It’s efficient, portable, and easy to maintain.
Optional: Customize the Save and Load Paths
By default, ACF uses the acf-json
folder in your theme. If you want more control, you can override the save/load paths using filters:
// Save JSON to a custom path
add_filter('acf/settings/save_json', function( $path ) {
return get_stylesheet_directory() . '/acf-json';
});
// Load JSON from custom paths
add_filter('acf/settings/load_json', function( $paths ) {
$paths[] = get_stylesheet_directory() . '/acf-json';
return $paths;
});
This is helpful if you use a shared library of fields across multiple themes or want to store ACF JSON outside your theme for better separation.
Conclusion
The ACF Synchronized JSON feature is a must-have for any WordPress developer working in teams, using Git, or managing multiple environments. It saves time, avoids mistakes, and gives you full control over your custom fields.
Whether you’re updating templates, refining your design system, or collaborating with others, this small feature will streamline your workflow and help you build better sites faster.
Thanks to kristinfalkner for highlighting this feature in her post.