Codeep Translate WordPress plugin

First see what is missing. Then fill it in.

Coming soon. Codeep Translate and its paid service are not available yet.

Most owners have never seen the number: how much of their site actually exists in their second language. This plugin counts your products, pages and posts in five seconds, for free, before a single word is translated. Then it translates the rest, in your own browser, with nothing billed by the word.

The number, on a real shop

The plugin's screen inside WordPress: a thousand products counted, German at 715 of 1009 translated with 51 out of date, French at 248 of 1009, the choice between translating in the browser and through the paid service, and the shop's word list below.

A thousand products, seven pages, two posts, two languages. German is most of the way there and 51 of its translations have gone stale behind edits; French has barely started. That screen is free forever and needs no key.

Products come first because a shop catalogue is the hardest thing on a site to keep translated, and that is what this was built for. WooCommerce is not required. Pages and posts go through the same screen in the same way, and the plugin works on a site with no shop at all.

Two ways to translate, and the switch is always visible

In your browser: free, and not limited. The model runs on your own computer inside the admin page. Nothing leaves your site. No word count, no product count, no language count, no monthly cap, because your machine does the work and that costs us nothing.

Through our service: better, and paid. The same screen can send the text to a much larger model instead. That one runs on our servers, we pay for it by the word, and so it is the thing we sell.

You can see both switches from the moment you install, with what each one does written underneath. Nothing in the free way is switched off waiting for payment. There is no disabled code in the plugin at all.

The honest part

A model small enough to run inside a browser tab is a simple one, and it shows. It is worst exactly where you would least expect: on titles. A title is three or four words with nothing around them, and without neighbouring sentences the model picks the wrong sense of a word. Long descriptions come out noticeably better, because the sentences around a word tell it what the word means. We would rather you read that here than discover it in your own shop.

So the plugin is built around not trusting it. The first three batches are shown to you before anything is written, field by field, source beside translation. After three you have seen enough to judge, and you can let the rest run unattended. Any run can be taken back whole, and that undo is free too.

If your descriptions have to read well, the paid model is the honest answer. It is a large language model, not a phrasebook, and the difference on a product description is not subtle.

It does not know your trade, so you tell it

The words of your shop: a language picker, a button reading Suggest words from my catalogue, and a text box listing plane equals Hobel, bench equals Werkbank, workshop equals Werkstatt, holdfast equals Haltepratze, barefoot buttons equals Barefoot Buttons.

In a woodworking shop a plane becomes an aircraft and a bench becomes a park bench. Left alone, the free model gets bench wrong in seventeen cases out of twenty-two.

The plugin reads your own catalogue, picks out the words that come up often enough to matter, and asks what each should become. Write a word as itself and it is left untranslated, which is how brand names survive. The list is kept per language, because a German word list applied to a French run puts German words in a sixth of your catalogue and nothing on screen would tell you.

What it writes, and what it cannot reach

Why there is nothing to meter on the free way

The translating is done by the machine already in front of you, inside your own admin screen. We run no server for it, so there is no cost per use on our side to pass on, and nothing to count.

Where the translating happensin your browser
Where your product text goesnowhere
API keynone
Products you may translateall of them
Languagesall of them
Undoincluded
Outside calls after the model downloadsnone at all

The model file is fetched from Hugging Face the first time you translate into a given language and then cached by your browser: about 100 MB for the processor, about 400 MB if your browser can use the graphics card, per language. That transfer is one way: the model comes in, and nothing about you or your catalogue goes out.

It is slow, and that is the same fact

Your processor does the work, so the speed is your processor's speed. A batch of fifty products takes a few minutes on a laptop without graphics acceleration. A five thousand product catalogue is an afternoon, not a coffee break.

Which is why the work survives you closing the tab. Progress is kept on your server; come back and the plugin offers to continue where it stopped. Open the admin in a second tab and it will tell you a run is already going rather than start a second one.

Planned paid service

Planned pricing: $49 a year, one site, and an allowance of ten million words in each paid year. That is a catalogue of five thousand products translated into six languages, with room left over. It buys translation through our service, which runs gemini-3.1-flash-lite behind our own key. We pay per word so that you do not have to hold an account with anyone.

It is a key, not a download. You enter it into a field in the same plugin you already have; there is no second version to install and no files to swap. And it buys quality, not features: everything the free way does, it keeps doing, unlimited, whether you buy or not.

Not on sale yet. Final pricing and purchase terms will be confirmed when sales open.

Getting it

The plugin is being prepared for the WordPress plugin directory. When it is approved, this is where the install link will be, and from then on it installs the ordinary way from Plugins → Add New inside your own site.

Nothing to sign up for in the meantime. There is no mailing list here and no form asking for your address in exchange for being told.

You will need WPML or Polylang. The plugin writes into whichever you use and cannot store a translation on its own; Polylang has a free version in the WordPress directory.

Questions

Write to support@sdsoftware.io. Tell us which of the two ways you were using, which language, and what you saw. That is usually enough to answer in one reply.