XTM Costs module – basics

Introduction

XTM Cloud includes a robust costs module that covers the entire scope of the project translation process in our application. It is quite extensive and enables a wide variety of configurations to be applied. It also takes into account different cases, depending on client needs. For this reason, let’s focus on aspects that are essential for the costs module to work.


Getting started

Billing currency & Exchange rates

To start learning about the way costs are managed in XTM Cloud, begin with this place: Configuration → Data → EstimatesExchange rates (administrative privileges required!).

  • System billing currency → This is one of the first things we need to set up in the XTM Cloud instance. The Linguists in XTM Cloud to whom we will be allocating translation tasks might want to be paid in different currencies so it is necessary to establish a valid billing currency. XTM Cloud will use it to calculate costs in accordance with an exchange rate.

  • Rate card currency → If linguists have a different currency in their rate cards (more on them later in this article), this is the section in which you need to find out what currencies your linguists are going to use, add appropriate rate card currencies and, in the Billing currency section, enter a suitable exchange rate in the field. If you do not specify a particular currency that is in use, costs for that particular user will fail to generate.

If all the linguists happen to have the same currency as your System billing currency, then you do not need to add anything in Rate card currency.

Chargeable workflow steps

You need to specify workflow step(s) that should be chargeable in your project by selecting the appropriate checkbox. However, you must first activate the function that enables this to happen. To do so, select Configuration → Data → Estimates → Cost settings → Cost settingsShow Chargeable checkbox in Workflow Editor.

IMPORTANT!

If this checkbox is not selected in the global configuration, all workflow steps except Automatic steps will be set as chargeable by default.

Rate cards

XTM Cloud has a highly flexible rate card function that supports billing in a defined currency. These rate cards are another prerequisite for future generation of costs. For this reason, our next step is to configure rate cards for active users. To do so, select Users → (select a user) → Rate cards.

  • User billing currency → This is where you choose a currency in which a particular user will be remunerated.

IMPORTANT!

Each user can only have one active billing currency!

Click the Add button to create a rate card.

For each rate card, you can specify:

  • The name to identify the rate card,

  • A description of the pricing and usage for the rate card,

  • Whether the rate card is active or not,

  • One or more language combinations – either single languages or groups,

  • One or more subject matters.

Then you can specify how the task cost is to be calculated. The task cost can either be based on factors or actual prices. You can also specify whether calculation should be based on word or character count. If you choose factors, you must enter a base price which will be multiplied by the percentage values you enter for the different types of match in each step, to work out the cost. If you use actual prices, enter the actual price for each type of match, for each step. For both types of calculation, you can also define:

  • A minimum charge.

Under the General fixed price heading you can set:

  • A fixed price per project,

  • A fixed price per language,

  • A fixed price per file,

  • A management fee percentage.

Then, for each workflow step, you can define:

  • A fixed price project,

  • A fixed price language,

  • A fixed price file,

  • A management fee percentage,

  • Rush job premium – A rush job premium percentage,

  • Minimum charge,

  • Price per hour,

  • The rates for fuzzy matching factors or actual prices can be set as a global figure or individual figures for each band.

After a project has been created…

Once the project has been created, you need to check a couple of additional things:

  • Make sure the relevant linguists are assigned to their tasks in the workflow:

  • Make sure that the Chargeable checkbox has been selected for the workflow step that is subject to payment:

  • Finally, go to the Project editor → EstimatesCosts, and choose the basis for your costs by selecting the relevant option in the Generate costs based on dropdown:

If you chose Metrics or Current metrics, you can proceed with generating costs. Statistics source and target, on the other hand, require your linguists to perform manual work on the project first.


Costs calculation mechanism

Procedure

For each workflow step (in a particular target language) for a particular user:

  1. Timing is taken (and from there, the word or character count, depending on the calculation method applied).

  2. Values from 1 are multiplied by rates from rate card matches (unless charging by time is used).

  3. Management fee is added to the resulting value from 2, later - fixed rate.

  • If the value is too low, it is increased to the minimum charge (fixed price per each task).

4. The resulting value from 3 is saved in the database.

5. For each target language, "costs per workflow step" are totaled.

6. Management fee is added to the resulting value from 5, later - fixed rate.

  • If the value is too low, it is increased to the minimum charge (fixed price per each task).

7. The resulting value from 6 is saved in the database.

8. For each user, "costs per language" are totaled.

9. Management fee is added to the resulting value from 8, later - fixed rate.

  • If the value is too low, it is increased to the minimum charge (fixed price per each task).

10. The resulting value from 9 is saved in the database.

11. For each project “costs per user” are totaled.

12. The resulting value from 11 is saved in the database.

Example

To express this in simple terms: The value of all matches is 1, each workflow step consists of 10 translated words.

  1. Rate cards

Fixed prices per project: Man. fee 10%, Fixed price 10, Min charge 115.

  • RateCard1 – pl_PL:
    Fixed prices per language: Man fee 25%, Fixed price 5, Min. charge 55;

    • Fixed prices per Translate: Man fee 20%, Fixed price 5, Min. charge 15;

    • Fixed prices per Correct: Man fee 10%, Fixed price 3, Min. charge 15.

  • RateCard2 – de_DE:
    Fixed prices per language: Man fee 50%, Fixed price 15, Min charge 40;

    • Fixed prices per Translate: Man fee 10%, Fixed price 2, Min charge 10.

  1. Costs calculation

  • pl_PL:

    • Translate:
      10 * 1,2 + 5 = 17 → 17 > 15, so the final price for this step is 17.

    • Correct:
      10 * 1,1 + 3 = 14 → 14 < 15, so the final price for this step is 15.

Total price for steps: 17 + 15 = 32

32 * 1,25 + 5 = 45 → 45 < 55, so the total price for language is 55.

  • de_DE:

    • Translate:
      10 * 1,3 + 7 = 20 → 20 = 20, so the final price for this step is 20.

Total price for steps: 20

20 * 1,5 + 15 = 45 → 45 > 40, so the total price for language is 45.

  1. Final result

  • Sum for the languages: 45 + 55 = 100;

  • Price for the user: 100 * 1,1 + 10 = 120 → 120 > 115, so the final price for the user is 120;

  • Price for the project (the sum of costs for all users): 120.


After costs are generated…

Costs tab

Once you click the Generate button, all the costs that are generated will be displayed in the previously mentioned Costs tab, in the form of a UI record (Project editor → EstimatesCosts).

As you can see, there are some basic pieces of information about the entry, such as:

  • Date on which the costs were generated,

  • User who generated the costs (the costs could also have been generated automatically),

  • Basis for the generated costs,

  • Aggregated price,

  • Delivery date (if specified beforehand),

  • Total number of words;

  • Total number of existing ICE/Leveraged matches.

As you might have noticed, costs are generated for the entire project. To see a breakdown per Linguist, click on the entry. You will see more details.

  • Names of the Linguists for whom costs have been generated,

  • Purchase Order number,

  • The Price column shows the Linguist remuneration in your system billing currency,

  • Both costs for non-analyzable files and additional costs can be specified as either a fixed amount or as a percentage of the base price,

  • Linguist price shows the remuneration in the Linguist's rate card currency that is displayed in a Purchase Order,

  • Workflow steps, as the name suggests, shows the names of the steps in which a particular linguist was involved and which are within the payment scope.

  • Email status indicates whether an e-mail with a PO has been sent to the client or not.

Purchase Order

You can generate a Purchase Order for each linguist.

  • Generate PO → a default PO will be downloaded.

  • Generate custom PO → a popup will open. In it, you can select the PO file format, calculation method, and custom fields. You can decide to include rates or a cost breakdown into languages or languages and workflow steps. You can also specify whether the PO is to be emailed to the linguist automatically, add a comment, and customize the footer and font sizes. You can also configure a custom PO layout that is to be applied globally, by selecting Configuration → Data → Estimates → PO settingsDefault PO.

  • Email PO to linguist → You can send a PO to the linguist straight away. The sending status will be marked in the relevant column on the right-hand side.

The XTM Cloud functionality includes multiple reports relating to costs. These reports can be generated and downloaded from the UI. The most important rule here is that the costs need to be generated effortlessly, for the data from their corresponding projects to be displayed in a suitable report. In other words, correctly generated costs are a must for any XTM Cloud cost-related report to be correct. To see more details, we recommend that you read this article: Costs & Metrics reports.

Troubleshooting cost generation issues

There might be several reasons that prevent you from being able to generate costs correctly. See this separate article that tackles the most frequent problems with costs generation: Costs generation - most common issues & troubleshooting.


Phase costs and Statistics

Note that Statistics are only modified as a result manual activities by a linguist in XTM Workbench. Contrary to metrics, Statistics are not modified after actions such as project reanalysis, continuous project update, or the uploading of new source files are performed. Only activity by a linguist in XTM Workbench after completion of the above-mentioned actions will modify Statistics.

Also very important: the settings under (administrative privileges required!)

Go to Configuration → Data → Estimates → Cost settings → Automation of continuous projectsSave history of project metrics, statistics, tracked time and costs when.

Use these options to specify whether Statistics are to be reset, and phase costs are to be generated, when those actions (reanalysis, continuous project update) are performed and pre-processing finishes.

  • Project is reanalyzed → Creates a record containing project costs data when an existing project is reanalyzed;

  • Pre-processing is finished → Creates a record containing project costs data when the pre-processing workflow step has finished;

  • Source file with name existing in project is uploaded → Creates a project costs data record when a new source file is uploaded to XTM Cloud and that file has the same name as some other file that already exists in the project.

In other words, selecting these options and reanalyzing files/uploading files to a continuous project (CP) results in the statistics being deleted in the UI. This mechanism is used so that large amounts of data do not accumulate in the Statistics after these actions are performed.

In this case, you can automate cost calculation by selecting Generate costs for project history and then selecting the appropriate option. In this case, every time you reanalyze a file for/upload the file to a continuous project, costs will be generated first, and then Statistics will be deleted.

Option 1 – resetting Statistics disabled

Reanalysis: example

  1. The client created a simple project with 1 step and 1 file (a .txt file) containing 10 segments.

  2. None of the segments received a TM match, and the linguist translated all the segments.

  1. The project was reanalyzed. ICE matches were inserted in previously translated segments. Statistics remain unchanged.

At this point, there are Costs for 10 No matching segments.

At this point, there are Costs for 10 No matching segments.

  1. The linguist changed the translation in each segment.

At this point, there are Costs for 10 ICE-matched and 10 No matching segments.

At this point, there are Costs for 10 ICE-matched and 10 No matching segments.

Continuous project update: example

  1. The client created a simple project with 1 step and 1 file (a .txt file) containing 10 segments.

  2. As in the previous case, none of the segments received a TM match and the linguist translated all the segments.

  3. The client made a continuous project update (modified the .txt file by adding 5 new segments, bringing the total number of segments to 15). ICE matches were inserted in previously translated segments (except for one segment in which a Leveraged match was inserted). Statistics remain unchanged.

  1. The linguist ONLY translated new segments (11-15) and approved segment 10 (Leveraged match).

At this point, there are Costs for 15 No matching segments and 1 Leverage-matched segment.

At this point, there are Costs for 15 No matching segments and 1 Leverage-matched segment.

  1. The linguist corrected the translations of the old segments (1-10).

At this point, there are Costs for 9 ICE-matched segments, 1 Leverage-matched segment and 15 No matching segments.

At this point, there are Costs for 9 ICE-matched segments, 1 Leverage-matched segment and 15 No matching segments.

Option 2 – resetting Statistics enabled

Reanalysis: example

  1. The client created a simple project with 1 step and 1 file (a .txt file) containing 10 segments.

  2. None of the segments received a TM match, and the linguist translated all the segments.

  3. The client reanalyzed the project. ICE matches were inserted in previously translated segments. Statistics are reset. From now on, they are only available at Statistics history level (Project editor → StatisticsStatistics history).

At this point, there are Costs for 10 No matching segments.

At this point, there are Costs for 10 No matching segments.

  1. The linguist changed the translation in each segment.

At this point, there are Costs for 10 ICE-matched and 10 No matching segments.

At this point, there are Costs for 10 ICE-matched and 10 No matching segments.

Continuous project update: example

  1. The client created a simple project with 1 step and 1 file (a .txt file) containing 10 segments.

  2. None of the segments received a TM match and the linguist translated all the segments.

  3. The client made a continuous project update (modified the .txt file by adding 5 new segments, bringing the total number of segments to 15). ICE matches were inserted in previously translated segments (except for one segment in which a Leveraged match was inserted). Statistics are reset. From now on, they are only available at Statistics history level.

At this point, there are Costs for 10 No matching segments.

At this point, there are Costs for 10 No matching segments.

  1. The linguist ONLY translated new segments (11-15) and approved segment 10.

At this point, there are Costs for 1 Leverage-matched segment and 15 No matching segments.

At this point, there are Costs for 1 Leverage-matched segment and 15 No matching segments.

  1. The linguist corrected the translations of the old segments (1-10).

At this point, there are Costs for 9 ICE-matched segments, 1 Leverage-matched segment and 15 No matching segments.

At this point, there are Costs for 9 ICE-matched segments, 1 Leverage-matched segment and 15 No matching segments.