Native ACF blocks, not a black box
AIRA classifies each section into your registered ACF blocks and outputs real Gutenberg via serialize_block() — with confidence scores and a review step. Deterministic where it counts; AI only for the judgement calls.
1 credit = 1 page · Crawl and preview free · Pay when you commit
Why hand-migrating WordPress is a trap
You can build the blocks. Getting years of someone else's content into them — without shortcodes, brittle scripts, or guesswork — is the real problem.
Page builders aren't your code
Shortcodes and postmeta lock content into a runtime you didn't write and can't fully control. You want native blocks and clean markup you own.
Scrapers are brittle
Hand-rolled regex and DOM scripts break the moment the source markup shifts. You end up rewriting the migration for every project.
AI tools are a black box
You won't ship output you can't inspect — or a tool that silently drops content when it isn't sure what to do with a section.
Field keys have to match
Content must land in the exact ACF field keys or nothing renders. A migration that ignores your keys just makes more cleanup.
How the pipeline works
Generate a spec from your ACF JSON
Upload your field-group export and AIRA learns every block, field key, repeater and flexible-content layout. The spec is the contract the migration is built against.
ACF JSON export, explained →Crawl & classify with confidence scores
AIRA reads the rendered DOM and classifies each section into a block. AI fills composite fields; deterministic heuristics handle atomic content. Every block gets a confidence score and un-scrapeable fields are flagged.
How section mapping works →Review, then import as native blocks
Inspect the mapping, reassign or drop blocks, then import. Each block is built with WordPress's own serialize_block() against your field keys, so it opens natively in the editor. Import from the plugin UI or WP-CLI.
Importing the bundle →Deterministic by design
AIRA uses AI for judgement — matching an ambiguous section to the right block — and plain, predictable code for everything else. You stay in control of the output.
Native output
Real Gutenberg blocks via serialize_block(), against your registered ACF block library and exact field keys. No proprietary wrapper, no shortcodes.
Always a valid result
No composite match? The section falls back to a generic-text WYSIWYG block with inline formatting kept. Content is never dropped on the floor.
Run with or without AI
Deterministic heuristics alone produce a valid, importable result. AI classification is opt-in for sharper mapping — it raises the ceiling, it isn't load-bearing for correctness.
No API keys, nothing in the browser
AI runs on our servers and is covered by your credits. There's no separate AI bill to manage and your content never touches a client-side key.
Inspect before you spend
Confidence scores and review flags surface every uncertain block. Crawling and classifying are free — you commit a credit only once you're happy.
CLI and drafts
Import through the plugin UI or with wp acfmigrate import bundle.json --status=draft. Everything lands as drafts, so nothing goes live until you publish.
Technical deep-dives
The ACF and Gutenberg detail behind how AIRA maps and builds blocks.
Fits the stack you already build on
If you ship ACF-based WordPress sites, AIRA slots into your existing workflow — no new infrastructure.
- check_circleWordPress 6.4 or newer on the destination site
- check_circleACF Pro with your blocks registered
- check_circleThe free ACF Migrate importer plugin
- check_circleField keys that match the export your spec was built from
- check_circleA publicly reachable source site to crawl
- check_circleRead-only on the source — AIRA never writes to it
Questions developers ask
Does AIRA output native Gutenberg blocks?
Yes. On import, each block is built with WordPress's own serialize_block() using the field keys from your ACF export, so it opens natively in the block editor — no proprietary format and no shortcodes.
Do I need my own OpenAI or AI API key?
No. AI classification runs on our servers and is covered by your credits. There are no separate keys to manage, your content never hits the browser, and the pipeline can run deterministically without AI at all.
What happens to a section that doesn't match a block?
It falls back to an atomic block — usually a generic-text WYSIWYG block with inline formatting preserved. Three or more images become a gallery, a lone image becomes a full-width image, and so on. You always get a valid, importable result.
Can I import via WP-CLI?
Yes. As well as the plugin UI, you can run wp acfmigrate import bundle.json --status=draft. The destination site needs the same ACF blocks registered and the same field keys as the export your spec was built from.
Will AIRA modify the source site?
Never. AIRA only reads the public front-end of the source site. Everything is written to your new WordPress build as drafts, so you stay in control of what goes live.
See the block mapping for yourself
Crawl a site free and inspect exactly how every section maps to your ACF blocks — before you spend a credit.
Open AIRA — 10 free credits