Skip Navigation

This thread is resolved. Here is a description of the problem and solution.

The client noticed a discrepancy between the estimated word count provided by WPML for a product translation and the actual word count they calculated manually. They also observed that the translation credits charged were higher than expected based on the estimated word count.
1. We verified the word count for a completed translation job and confirmed that the count matched the credits charged.
2. We examined the XLIFF file for the job in question and found that the word count included meta data from SEO, post excerpts, and texts from media on the page, which explained the higher word count.
3. We clarified that all texts within a single translation job are counted, including duplicates, but if the same texts are included in later jobs and have already been translated, they are not charged again.
4. We explained that the estimated word count shown before translation is a rough estimate based on character count and typical word length, which may not always match the actual word count.
5. We suggested that if DeepL translation costs are higher than desired, the client could consider using Microsoft for translation, which is half the price.
For more details on translation costs, you can check the WPML Automatic Translation Pricing page.

This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

Our next available supporter will start replying to tickets in about 3.84 hours from now. Thank you for your understanding.


This topic contains 25 replies, has 2 voices.

Last updated by Nigel 8 months, 2 weeks ago.

Assisted by: Nigel.

Author Posts
September 20, 2023 at 9:35 am #14428275


Timezone: Europe/Madrid (GMT+02:00)

I just finished a discussion with my colleague about this, and it seems everything is correct after all.

I was wrong to remove the duplicate strings when extracting the text from the XLIFF file: all texts within a single translation job are counted, although if the same texts are included in later jobs and have already been translated so are in your site's Translation Memory then you are not charged again to translate the same texts.

In the XLIFF file for this particular job the title appears several times because, for example, it is also included in the Rank Math SEO meta, which needs translation.

So the correct word count does appear to be 312 without removing the duplicate texts.

Bear in mind this is a mechanical process to split all of the texts into individual words and things that look obvious to us are not obvious to it.

Now, the estimated word count shown before the translation is more of a crude estimate based on the total number of characters and the typical word length, intended to be indicative of the size of the translation job rather than the accurate word count made during the translation itself. As you are translating a product where quite a few of the texts break into very small words or numbers I can see how that would make the estimated word count before the translation too low.

If using DeepL as the translation engine is proving more expensive than you would like, you could try using Microsoft, which is half the price.

(There is a calculator for translation costs on this page in the FAQ section: Once the free credits are used up, I estimate the post we have been discussing would have cost 47c to translate with DeepL. With Microsoft it would cost 24c.)

September 20, 2023 at 10:31 am #14429135


Ok, I see now that I have to add aprox. 40% on estimate, dont like but at least I know it.

Now I went to translate 100 products at one go.Estimate was aprox. 30000 credit, it took me aprox. 46000 credits. BUT THERE WAS ERROR and it didn't translate not a single product.

Error was something about couldn convert string to array...

Is it not possible to give 100 post to bulk translate. In translations charges everything is deducted as it was translated.

Also what happens to my credits, I didn't get translations.

September 20, 2023 at 11:40 am #14429765


Timezone: Europe/Madrid (GMT+02:00)

I'm looking into this. Let me just reassure you though if you've lost credits through a malfunctioning translation we can fix that.

You say you saw an error ("convert string to array").

Where did you see it? Is it in the logs, so that you can share details with me, or was it something that appeared on-screen?

September 20, 2023 at 2:51 pm #14431499


Timezone: Europe/Madrid (GMT+02:00)

Can you go to WPML > Support and check the Advanced Translation Error logs for any reports of errors (and share those with me).

Take this product as an example: hidden link

I can see the it was translated (internally its status is completed), but it was not delivered to your site, though I can't see why that is, hence I would like to know what the ATE error log shows.

In total there appear to be 93 products with the same issue, that the translation was completed, but the translation wasn't delivered back to your site.

September 21, 2023 at 7:04 am #14434841


In error log there are 3 same errors.

2023/09/20 10:00:46 dop ATE Server Communication Service Unavailable 0 0 {"url":"https:\/\/\/api\/wpml\/languages\/mappings","requestArgs":{"method":"GET"},"status":503}

This was short error, one of it has very long error log, but error is the same.

You can look by yourself, you have access.

Error I saw was on top of screen in backend editor. Similar like if you give show errors on true.

September 21, 2023 at 2:46 pm #14440555


Timezone: Europe/Madrid (GMT+02:00)

Just an update to let you know that I've been discussing this (a lot!) with my colleagues today, who are trying to identify the problem.

For some reason your site keeps getting blocked, and they are trying to get to the bottom of why.

It is likely that you will need to re-send those problem product posts for translation again, though not before we have the all clear about your site being unblocked.

Note, because the translations already succeeded and your credits were deducted, you won't be charged again (the strings will be in your Translation Memory).

You may note my colleague has already credited you with a bonus 50,000 credits because of the inconvenience you are experiencing.

I'm off tomorrow, it may be one of my colleagues who contacts you, but I will check-in on Monday morning to see what the status is.

September 22, 2023 at 6:27 am #14443475


Thank you for info. I hope we solve this soon and I can get page translated, cause I need to do this soon.

September 25, 2023 at 8:31 am #14455713


Timezone: Europe/Madrid (GMT+02:00)

My colleagues are still looking into this, together with one other client that reports similar problems. The issue appears to have been that when the translation server is trying to deliver the translation back to your server the requests are failing with errors, and so after a while the translation server stops trying (to stop spamming your server with requests it cannot fulfil).

However, I have been able to successfully send products for translation from your site this morning. (I sent 20 products; only 1 consumed any credits. I assume 19 were products that you had previously sent last week where the posts were translated but not delivered, and the same should happen if you re-send other products that were already translated.)

You might want to resume translating products while we look into this further.

I'd suggest sending them in batches of 20 at a time (which is what you can normally bulk select on the translation management page).

Note, I have the debug.log turned on on your site currently, and I will be monitoring it for errors from time to time.

October 2, 2023 at 3:05 pm #14499047


Timezone: Europe/Madrid (GMT+02:00)

Hi there

I'm just checking if you have experienced any similar problems while translating the rest of your content.

Logging into the same staging server as before to check the debug log, I can see that the site has been moved to a production server. The errors I saw in the debug log relate to when I had been testing a week or two ago (and I shared those with the developers at the time).

I wanted to check if you were able to complete the translations, or have run into the same problem again?

October 3, 2023 at 6:24 am #14501449


Hello Nigel,

no I didn't run into same problem. I was translating 30 pages in one que and it worked ok.

I also found out about estimate which was wrong. I switched off related products and advice section in original language page and then estimate was accurate with real translation.

So everything went great in the end 🙂

Just one more thing, I finish translation and used pay as you go payment. I did this work for client (agency licence). In the end i want to switch off pay as you go for this client but leave possibility for plugin updates.
When I put license in it also switches on Pay as you go for this domain, which I don't want.
How to properly setup this?

October 3, 2023 at 8:11 am #14502047


Timezone: Europe/Madrid (GMT+02:00)

I'm glad everything worked out well.

You can cancel pay-as-you-go for the site, as described here:

You may want to learn about transferring the account itself to your client:

This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.