Advanced Custom Fields
by WP Engine
Adds structured custom fields to any post type so editors fill in fields instead of styling content by hand.
This link may earn us a commission. It never changes our rating.
What Advanced Custom Fields does
Adds structured custom fields to any post type so editors fill in fields instead of styling content by hand.
It sits in the content part of a WordPress stack and is sold by WP Engine on a freemium basis. We recommend it in our content guides because it does that one job well without asking you to rebuild the rest of the site around it.
Every plugin adds work to a page request, so treat this as a decision with a cost. Record a speed test before you install it and run the same test afterwards, on the same page, so you know exactly what it charged you.
Real user ratings
Score
4.5/5
Reviews
1,439
Active installs
2,000,000+
Downloads
76.2M
Latest version
6.8.10
Last updated
2026-09-10
These figures come straight from the public WordPress.org plugin directory API for version 6.8.10, not from us. Check them yourself on the WordPress.org listing. Our own editorial score is 4.5/5.
Where Advanced Custom Fields ranks elsewhere
Advanced Custom Fields does not appear in the published "best of" lists we track from WPBeginner, TechRadar, Kinsta, Themeisle and similar sites. That is not a mark against it - those roundups are short and skew towards the biggest names.
What changed in the latest version
- Security - ACF now validates that uploaded PDF files begin with the standard %PDF- header before further processing, rejecting files that do not match the expected format
- Security - The Relationship, Post Object, Image, Gallery, and File fields now enforce WordPress read permissions on referenced posts and attachments when returned in REST API responses
- Security - ACF now verifies both preview context and the caller's edit capability before substituting revision data when field values are retrieved for a post
- Security - The _acf_form token used by frontend forms now expires and is bound to its issuing render, and acf_encrypt() / acf_decrypt() gain an optional $context argument for domain separation between token uses
- Security - ACF now consistently runs field validation on frontend form submissions containing field data, ensuring required-field checks and custom acf/validate_value filters cannot be circumvented
- Security - ACF's REST API schema no longer discloses per-object field-group configuration in OPTIONS requests to callers who lack read permission on the target object
- Security - The User field AJAX endpoint now validates that the request nonce was created for a User field
- View Release Post
- Enhancement - ACF Blocks registered via acf_register_block_type() or block.json without an explicit version now default to v3 on WordPress 7.1 or later. Blocks that specify a version continue to use the version they declare, and the defa...
- Enhancement - ACF Blocks v3 now supports a renderPreview option in block.json . Setting "renderPreview": false shows a placeholder with the block's icon, title, and an "Edit Block" button in the editor instead of rendering the block's te...
- Fix - Inline editable fields in ACF Blocks V3 no longer require a second click before they can be edited
- Fix - Radio buttons now appear correctly in ACF admin screens
- Fix - Image and Gallery fields no longer reject SVG uploads when the Safe SVG plugin is active
- Fix - Image and Gallery fields no longer reject SVG files
Release notes are the developer's own words, published on WordPress.org. Read the full changelog
Pros and cons
- Turns messy page content into structured, reusable data
- A free tier you can trial before paying
- Actively maintained and used on production sites we test
- Field output needs template work or a block builder
- The features most sites need sit in the paid tier
How to use it
- 1Install on a staging copy first if the site takes money.
- 2Work through the setup wizard and connect any external accounts it needs.
- 3Configure the one feature you installed it for, and leave the rest off.
- 4Test the result as a logged-out visitor on both mobile and desktop.
- 5Re-run our speed test to confirm the plugin has not cost you load time.
How it compares
Other content plugins we recommend, with their rating and pricing model.
| Plugin | Our rating | WordPress.org | Pricing | Best for |
|---|---|---|---|---|
| Advanced Custom Fields | 4.5 | 4.5 (1,439) | Freemium | Turns messy page content into structured, reusable data |
| Custom Post Type UI | 4.6 | 4.6 (276) | Freemium | Structured content types with no code |
| Easy Table of Contents | 4.6 | 4.4 (219) | Freemium | Automatic and configurable |
| LuckyWP Table of Contents | 4.7 | 4.9 (885) | Free | Clean markup and free |
| Pods | 4.8 | 4.8 (418) | Free | Fields and content types in a single free tool |
| SimpleTOC | 4.6 | 4.9 (77) | Free | Zero JavaScript on the frontend |
Alternatives
Other content plugins
Custom Post Type UI
WebDevStudios
Creates custom post types and taxonomies through the admin instead of hand-written registration code.
276 reviews · 24.7M downloads · v1.19.3
Easy Table of Contents
Steven Zahm
Generates a table of contents from your headings automatically with per-post-type control.
219 reviews · 19.3M downloads · v2.0.87.1
LuckyWP Table of Contents
LuckyWP
A free contents plugin with a block, shortcode and smooth-scroll behaviour.
885 reviews · 1.1M downloads · v2.1.14
