Skip to main content

wxrks Analytics Data Reference: Datasets and Columns

A reference to every dataset and column available in wxrks Analytics (Metabase), for building custom Questions, joins, and calculated fields.

wxrks Analytics runs on Metabase and gives every account a set of datasets (tables) covering projects, tasks, users, costs, and quality data. This article is a reference to what each dataset contains and what its columns mean — useful when you're building a custom Question, adding a Join, or creating a Custom Column and need to know which field to pick.

If you're looking for a walkthrough of the Analytics interface itself — requesting access, navigating default dashboards, adding filters, or building joins and custom columns step by step — see Analytics in wxrks instead. This article assumes you're already in a Question or Dashboard and need to know what a specific dataset or column represents.

💡 Who is this for? This guide is for data analysts and report builders who need to look up what a specific Analytics dataset or column represents while building custom Questions, Joins, or Custom Columns in wxrks Analytics.


How Dates and Timestamps Are Represented

Most datasets store date/time values as standard timestamps. A few raw event tables instead store time as epoch milliseconds — the number of milliseconds since January 1, 1970 — which Metabase can still filter and group on once you tell it the column is a date/time field.

Some datasets are pre-aggregated by month, with the period represented as a plain string like 2024-08 (YYYY-MM) rather than a full date. Account Metrics, described below, works this way.


Working with JSON Columns

Several datasets include columns holding structured JSON data — for example, a project's target languages or an account's custom fields. In Metabase these are queryable with standard JSON operators when you write a native (SQL) question.

Custom fields deserve a special note: wxrks lets accounts define their own custom fields on Projects, Organizational Units, Organizations, Users, Tasks, and invoices. Because every account's custom fields are different, they're stored as a JSON array on the base record rather than as fixed columns. To make them usable without knowing the field names in advance, Analytics exposes a matching *_custom_fields dataset for each of these (e.g. Project Custom Fields) that flattens the array into one row per field, with a key and a value column — join it back to the base dataset on its UUID to pull a specific custom field into a report.


Core Datasets

These are the datasets most reports are built from.

Account Metrics

Volume processed on the account, in characters, words, or tokens, broken down by month (YYYY-MM) and metric type.

  • metric_type identifies what kind of volume the row represents. Common values include METRIC_WORK_UNIT (raw volume processed), METRIC_MT_TRANSLATION (machine translation volume), and METRIC_MT_GPT_BWX_OPENAI (AI/LLM volume) — several other MT-provider and AI variants also exist, so don't treat this as an exhaustive list.

  • The count column's unit depends on the metric type — for an AI metric type such as METRIC_MT_GPT_BWX_OPENAI, it represents a token count.

Account Users

Every user on the account, with their Organization and Organizational Unit associations, rates, and status. Use this when you need an account-wide view of users rather than one scoped to a single Organization or Org Unit.

Organization Users

The same user data as Account Users, scoped to a specific Organization instead of the whole account.

Org Unit Users

The same user data again, scoped to a specific Organizational Unit, and additionally including each user's role within that unit.

Account Users Access

A log of account user access, including IP-derived location (city, country, coordinates). Access is logged in intervals — repeated activity from the same user within a short window is recorded as a single access event rather than one row per request, so this reflects session-level activity, not a row-per-click log.

Projects

Every Project on the account, with its status, dates, currency, cost, and language pair. A few columns worth knowing:

  • The contact is the project's client-side contact; the creator is who created the project in wxrks; the assignee is typically the Project Manager responsible for running it.

  • ci_tag is populated only for Continuous Integration projects, such as ones created through the GitHub connector.

  • target_languages is a JSON array listing every target language on the project.

  • custom_fields holds any account-defined custom fields for the project — join to Project Custom Fields to pull a specific one in by name.

Project Status Changes

A log of every status transition a Project has gone through — who requested it (for example, who requested APPROVAL or DELIVERY) and when, including the previous and new status and any recorded reason.

Project Tags

Every tag associated with a Project, including its CI tag where applicable. One project can have multiple tags, so this dataset has one row per tag rather than one row per project.

Project Resources

Every file (resource) uploaded to a Project, with its type, name, and upload date.

Project Costs

The cost line items billed against a Project. The description column holds the name of the price applied to that line — for example, a row might show description: Words Translation 0% - 49%, match_start: 0, match_end: 49, unit_type: WORD, units: 250, cost_per_unit: 0.01, total: 2.50, meaning 250 words in the 0–49% match band were billed at $0.01/word under this account's pricing configuration.

Work Units

Every Work Unit (a file within a Project, in a specific language pair), with word/character counts, cost, and savings. Where both words and net_words are present, the difference reflects how much of the file was already leveraged from Translation Memory during analysis. project_resource_id links back to the matching row in Project Resources.

Tasks

Every Task in the system — who it's assigned to, its workflow step, dates, and status. When a payable_amount is present, it reflects what the assignee is being paid for that task, which is what makes profitability and margin reporting possible at the task level.

Quality Report

Review data recorded whenever content moves through a review step in a workflow — a fine-grained record of what was changed between the translator's and reviewer's versions, categorized (e.g. fluency, grammar, terminology) and scored.


Additional Datasets

A few more datasets are also available for less common reporting needs:

  • Edit Distance — the calculated edit distance between a segment's suggested and final translation, by language pair, useful for measuring how much a translator or reviewer changed compared to what was proposed.

  • Payables — amounts owed to vendors/linguists, with status, due date, and payment date.

  • Receivables — invoices issued to clients, with status, amounts, and payment date.

  • Projects Profit and Savings — a pre-built profitability and TM-savings view at the project level, combining cost and payable data so you don't have to join Projects, Project Costs, and Tasks yourself for this specific calculation.


Related articles

For the Analytics/Metabase interface itself — requesting access, default dashboards, filters, duplicating content, joins, and custom columns — see Analytics in wxrks.

Did this answer your question?