Translate a post, page or category into every language on your Polylang site in one click, with your own OpenAI key and no plugin limits.
EPICWP AI Translation for Polylang is a free WordPress plugin that translates posts, pages, custom post types and terms with AI on sites that use Polylang. It creates the Polylang translations from the edit screen and runs the work in the background on your server. It uses your own OpenAI API key with the GPT-5.4 Nano model, so there is no account with us, no subscription and no usage limit. Block and HTML structure stay intact, and a second run only sends the fields you changed. The post list and a dashboard show the status of every translation.
How it works
- Install Polylang and add your languages. Then install and activate EPICWP AI Translation for Polylang.
- Paste your OpenAI API key under Languages > AI Settings and click Test connection.
- Open a published post, page or term, tick the target languages and click Start Translation.
The translations appear in Polylang moments later, linked to the original and ready for the language switcher. On a fresh site the first translated post is minutes away.
What it translates
- Content: posts, pages and every custom post type you enabled for translation in Polylang: title, content, excerpt and slug.
- Editors: the block editor (Gutenberg) and the classic editor. Block markup, HTML tags and links are preserved; only the text changes.
- Taxonomies: categories, tags and custom taxonomies: name, description and slug, from the term edit screen.
- Languages: every language configured in Polylang, from any source language, into several targets in one run.
What it does not do
- It does not translate the front end on the fly. It writes real Polylang translations that you can edit, and they stay if you remove the plugin.
- It does not replace Polylang: Polylang 3.7 or newer, free or Pro, provides the languages and the translation links.
- It does not include AI usage: you bring your own OpenAI key, and OpenAI bills you a fraction of a cent per language for a normal post.
- It does not create drafts. Only published content is translated and the translation is published right away; review it in the editor afterwards.
- The free edition does not send custom fields, page builder layouts, WooCommerce data, SEO meta or Polylang strings to the AI; Elementor and Bricks layouts are copied unchanged for you to translate in the builder. The Pro edition translates all of these.
- It does not translate navigation menus; Polylang manages menus per language.
Free vs Pro
The free edition is complete for translating content one item at a time. The Pro edition is for sites with a lot of content, page builders, WooCommerce or SEO plugins.
Free edition
- ✅ Post, page and term translation from the editor
- ✅ OpenAI with the GPT-5.4 Nano model
- ✅ Custom instructions per translation
- ✅ Change detection and per-field re-translation
- ✅ Status column and filter in the post list
- ✅ Dashboard with coverage and activity feed
- ✅ Preflight checks, error log and debug log
- ❌ Bulk translation of post types, taxonomies and the whole site
- ❌ Elementor, Bricks, ACF and WooCommerce translated in place
- ❌ Custom field management (translate, copy or ignore per field)
- ❌ SEO meta (eight SEO plugins, listed under Pro)
- ❌ Polylang string translations
- ❌ Internal links rewritten to the translated pages
- ❌ Claude, Gemini and OpenRouter with model choice
- ❌ Site-wide AI context and instructions
- ❌ Premium support and automatic updates
Pro edition
- ✅ Post, page and term translation from the editor
- ✅ OpenAI with the GPT-5.4 Nano model or any supported OpenAI model
- ✅ Custom instructions per translation
- ✅ Change detection and per-field re-translation
- ✅ Status column and filter in the post list
- ✅ Dashboard with coverage and activity feed
- ✅ Preflight checks, error log and debug log
- ✅ Bulk translation of post types, taxonomies and the whole site
- ✅ Elementor, Bricks, ACF and WooCommerce translated in place
- ✅ Custom field management (translate, copy or ignore per field)
- ✅ SEO meta for Yoast SEO, Rank Math, All in One SEO, SEOPress, Slim SEO, Squirrly SEO, The SEO Framework and SEO Engine Pro
- ✅ Polylang string translations
- ✅ Internal links rewritten to the translated pages
- ✅ Anthropic Claude, Google Gemini and OpenRouter with model choice
- ✅ Site-wide AI context and instructions
- ✅ Premium support and automatic updates
Upcoming in Pro: Auto-Translate 24/7, which translates new and edited content automatically.
Moving to Pro keeps your settings and translation records. The Pro edition is a separate plugin, sold on our website as Polylang AI Automatic Translation: see
pricing and licenses or
upgrade to Pro. In both editions the AI provider bills the AI usage, not us.
Translation providers and quality
The free edition uses the OpenAI API with GPT-5.4 Nano, chosen for its price and translation quality. The Pro edition adds Anthropic Claude, Google Gemini and OpenRouter, with a choice of model.
A language model translates the whole post in context, so tone and terminology stay consistent, and it follows instructions such as keeping brand names or using the formal address. The plugin checks every answer before writing it; a refusal or an incomplete answer is reported, not saved. To redo a result, change the instructions and tick Force re-translation for the fields you want.
Why people choose this plugin
- In production since 2023; the free and the Pro edition share one translation engine.
- Background jobs through Action Scheduler: a closed browser tab or a slow AI response does not lose your work; failed items are retried three times.
- Preflight checks explain a blocked setup (key, languages, WP-Cron, loopback) before a run starts, instead of failing silently.
- Change detection keeps your OpenAI bill low: a second run only sends what you changed.
- Anyone who can edit a post can translate it; no administrator role needed.
- The Pro edition is rated 4.5 out of 5 on Trustpilot from 13 reviews.
Compatibility and requirements
- WordPress 6.8 or newer, PHP 8.1 or newer.
- Polylang 3.7 or newer, the free plugin or Polylang Pro.
- An OpenAI account with an API key and billing enabled.
- Block editor and classic editor. Elementor and Bricks: copied for translation in the builder (free) or translated in place (Pro). Other page builders are not supported.
- WooCommerce products: Pro edition.
- Background jobs need WP-Cron or a server cron and loopback requests to your own site; the preflight check reports if either is blocked.
Privacy and third-party services
Your content goes to the OpenAI API only when you start a translation, and nothing goes to us: no telemetry, no account, no phoning home. The External services section below lists what is sent, when, and the OpenAI terms and privacy policy that apply. No visitor data is ever sent.
Not affiliated with Polylang
EPICWP AI Translation for Polylang is an independent plugin by EPIC WP. It is not developed by, endorsed by or affiliated with the makers of Polylang.
Support and documentation
4.24.1
Bug Fixes
- Fixed an issue where unnecessary files were included in the Pro version package
4.24.0
What's New
- Added a working reply button with one-level comment threading to improve community interactions
Bug Fixes
- Fixed compatibility with Yoast SEO to ensure term SEO fields work correctly
4.23.1
Bug Fixes
- Background translation requests now take Polylang's admin context through Polylang's own
pll_context filter instead of defining its PLL_ADMIN constant, and the Polylang actions fired after a copy are referenced as Polylang's. Behaviour is unchanged.
4.23.0
What's New
- Community tab: a new Community section under Languages where you can browse topics from other users, submit bug reports, feature requests and questions with a rich text editor, and vote or comment on existing topics. Submissions are reviewed by the EPIC WP team before they become visible to the community. Available to licensed users.
- Official topics and replies from the EPIC WP team are marked with a Maintainer badge.
- The community screen stays clean: admin notices from other plugins are not shown there.
Improvements
- Community submissions include your site's system report so we can help faster, visible only to the EPIC WP team.
4.22.4
Bug Fixes
- Meta values are now unserialized without instantiating PHP classes, closing a possible object-injection path during translation write-back.
Free edition
- The free edition's shipped JavaScript sources no longer contain edition branches; the editions are composed at the bundle entries. No change in behaviour for Pro.
4.22.3
Bug Fixes
- Fixed the Test connection button staying disabled when the selected AI provider is no longer registered; the plugin now uses the first registered provider automatically
Free edition
- The readable JavaScript and CSS sources are now included in the free zip, with build instructions in the readme
- Migration and uninstall code for Support Access, a Pro feature, no longer ships in the free edition
4.22.2
Bug Fixes
- Fixed the license notice to display correctly instead of showing a permission error in the settings panel
4.22.1
Bug Fixes
- Fixed the application password warning to display correctly without affecting the layout
4.22.0
What's New
- Made custom field management available exclusively in the Pro version
Bug Fixes
- Fixed an issue that prevented sites from recovering when their license activation was deleted on SureCart
4.21.4
Bug Fixes
- Fixed compatibility to allow activation alongside Polylang Pro again
- Fixed translation snapshot handling to improve stability
4.21.3
Bug Fixes
- Fixed translation of component blocks in Gutenberg content for better accuracy.
- Fixed issue with source text freezing during batch translations to ensure smooth processing.
4.21.2
Bug Fixes
- Elementor HTML widget content is now translated
- Bricks page content is no longer silently skipped when translations run in the background
- Translation runs now stop with a clear error when your AI provider account is out of credits, instead of appearing stuck
- Saving a translation no longer clears related custom fields in other languages
4.21.1
Improvements
- More reliable handling of large translations with slow AI responses
- Clearer error reporting when a translation fails, so issues are easier to resolve
Bug Fixes
- Translating no longer overwrites ACF repeater content in the source language
- Translations no longer conflict with Polylang field synchronization while being written
- Empty translations from OpenRouter reasoning models are handled correctly
- Restored the option to translate Bricks array content
- The single-post translator no longer reports completion before translation actually starts
- Content edited during a translation run is now picked up correctly
4.21.0
What's New
- Added token price display for every translation model in the selection dropdown
- Added new Claude models Sonnet 5 and Opus 4.8 with optimized performance settings
- Set OpenAI default model to GPT-5.4-nano for improved translations
- Enabled Claude translations using the native Anthropic Messages API for better integration
- Refreshed and updated all provider model lists with improved settings
Improvements
- Improved handling of Gemini 3 models to reduce unnecessary processing during translations
- Updated Gemini integration to support new authentication keys seamlessly
Bug Fixes
- Fixed issue where AI refusals were being written into blank translation fields
- Fixed max output tokens setting to ensure a minimum limit of 16,000 tokens
- Fixed Claude client to avoid conflicts with WordPress internals
4.20.0
What's New
- Added a new feature to customize AI translation prompts with the System Prompt Enricher.
- Enabled carrying custom instructions for each translation run to improve translation accuracy.
Improvements
- Improved the AI status column to now appear on the Pages list for easier monitoring.
- Enhanced translation context by including website-specific information in every prompt.
- Refined URL and path preservation during translation to keep links intact.
- Improved handling of label and value fields to ensure only non-translatable slugs are skipped, preserving readable text.
Bug Fixes
- Fixed incorrect time display on translated language cards.
- Resolved crashes when translating empty repeater or group fields.
- Prevented loss of custom instructions during translation requests.
- Fixed issues with URL preservation and label-value skipping in translations.
Older versions
The full changelog, including older releases, is available at
epicwpsolutions.com.