Skip to content

Automatic Translation

On this page

Available in LATW AI Translator for WPML PRO (version 2.2.0 and later).

#What it does

Normally you translate content by opening the plugin’s Translations screen and pressing a
button. Automatic translation removes that step: as soon as a new post, page or product is
published, the plugin sends it to the AI on its own and WPML receives the finished translation
a short while later.

It was built for sites where content does not arrive by hand — a product feed from a supplier,
a CSV importer, an app that posts articles through the API. You publish, and the translations
appear.

Important: every automatic translation is billed by your AI provider, exactly like a manual
one. The settings page includes daily limits so an importer that misbehaves cannot run up a bill
overnight — see Daily Limit and Daily Cost Limit.

#How it works, step by step

  1. Someone (or something) publishes a new post.
  2. The plugin notes the post and starts a short countdown — 60 seconds by default.
  3. If the post is saved again during the countdown, the countdown restarts. This is deliberate:
    importers usually write the same product several times in a row (first the text, then the
    price, then the stock level, then the images), and we want to translate it once, after it has
    settled — not four times.
  4. Once the countdown runs out, the plugin’s regular every-minute background task picks the post
    up and sends it to the AI, in the same way as if you had pressed Translate yourself.
  5. The translation lands in WPML and the post is done.

#What does not start a translation

  • Editing content that is already published. Only content entering one of the selected
    states counts — a brand-new post being published, or a draft going live. Re-saving a published
    post does nothing at all. A stock or price sync that touches every product every few hours will
    therefore not trigger anything.
  • Content that is already translated. If a post already has a translation in every target
    language, it is skipped.
  • Translations themselves. A translated post is never treated as new content to translate,
    so there is no loop.
  • Drafts in progress, trashed posts and media attachments.

Keeping existing translations up to date when the original changes remains a manual decision on
the Translations screen.


#The settings

All options live in AI Translator → Settings → Automation.

#Master switch — “Automatic translation is ON / OFF”

The one control on the page that changes what your site does on its own. While it is off, nothing
below has any effect and the plugin behaves exactly as before. Turn it on and the plugin starts
watching for new content.

The panel shows a plain-language summary of what will happen once you save — which content types
go to which languages, how long the delay is, and which daily limits apply — plus a warning if
your current selection would translate nothing.

#Content Types

Which kinds of content are watched: Posts, Pages, Products, or any custom type your theme or
plugins register. Tick everything you want translated automatically.

Nothing happens until at least one type is ticked. This is the usual reason automatic
translation appears to “not work”.

#Trigger When Content Becomes

The state a post has to enter for a translation to start. Published is the default and is
what most sites want.

Option Translation starts when…
Published a post goes live (new post published, or a draft published)
Draft a post is first saved as a draft — useful if you want translations ready before publishing
Pending review a contributor submits a post for review
Private a post is published privately
Scheduled a post is scheduled for a future date

You can tick more than one. Remember that only the move into that state counts — a post that is
already published and gets edited is not re-translated.

#Delay Before Translating

How many seconds to wait after publication before sending the content to the AI. Default 60,
minimum 30.

Every further save of that post restarts the countdown. So the delay is not “translate 60 seconds
later” so much as “translate 60 seconds after the last time anything touched this post” — which is
what stops half-built imported products from being translated mid-import.

  • Content written by people in the editor: the default 60 seconds is fine.
  • Content coming from an importer that writes in several passes: raise it to 300 seconds (5 min)
    or more, so the importer is definitely finished.

#Target Languages

Which languages new content is translated into.

Leave all boxes unchecked to reuse the Target Languages you already picked on the
Translation tab. Tick specific languages here only if automatic translation should cover a
narrower set than your manual translations — for example, translate everything into German by hand
but let only French run automatically.

#Daily Limit

The maximum number of automatic translations per day. 0 means no limit.

One post translated into three languages counts as three.

This is the safety net. If a feed misfires and recreates 5,000 products, the limit stops the run
once it is reached. Nothing is lost — the remaining posts keep waiting and go out automatically
once the limit resets the next day (or as soon as you raise it). While a limit is holding content
back, a warning appears on the plugin’s own screens telling you how many items are waiting.

The day is counted in UTC, so it rolls over at the same moment regardless of your site’s timezone.

#Daily Cost Limit

The maximum amount, in US dollars, to spend on automatic translations per day. 0 means no
limit.
It counts only automatic translations — anything you start by hand is not included.

One caveat worth understanding: the exact cost of a translation is only known once it comes back
from the provider, so this limit reacts with a slight delay and can be overshot a little. If you
want a hard, immediate stop, set the Daily Limit above as well.

#Settings this feature reuses

Automatic translation is not a separate translation engine — it uses everything already configured
elsewhere in the plugin:

  • Processing Mode (Settings → General): synchronous, batch or background.
  • Provider, model and prompt settings (Settings → Translation).
  • Outdated Translations mode, if a post it handles turns out to need a delta update.

#Where to check on it

The plugin Dashboard has an Automatic Translation card showing, at a glance:

  • whether the feature is Active, Disabled, or currently blocked by a daily limit
  • the content types and languages it covers
  • Waiting — how many posts are queued up, and when the next one is due
  • Translated today — count, against your daily limit if you set one
  • Cost today — spend, against your cost limit if you set one