> For the complete documentation index, see [llms.txt](https://docs.chord.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chord.co/model-your-data/predictive-models/customer-lifetime-revenue-clr/clr-and-rfm-data-table-glossary.md).

# CLR and RFM data table glossary

### Introduction

The following are the columns in the table **chord\_ds.current\_batch\_output.clr\_ests\_current**, the feeder table for RFM, and CLR Chord Analytics explores.

An observation in this table is at the **chord\_tenant\_id**,\*\* user\_id \*\*(customer\_static\_id for Shopify) level, so it represents a summary view of a tenant’s customer.

Statistically modeled features are prepended with **predicted\_**, and the other fields are directly modeled in SQL. Data for a row is based on\*\* batch\_max\_date\*\*, the maximum date that data is read for the batch run.

**chord\_tenant\_id**: chord tenant id. **user\_id**: customer\_static\_id from shopify, user\_id from chordoms. **email**: last email address for user\_id. **company**: string that I use for telling chord\_tenant\_ids apart. **cohort**: first day of first month of user\_id’s first purchase. **zip**: user\_id’s last shipping zip code. **state**: user\_id’s last shipping state. **country**: user\_id’s last shipping country. **max\_dt**: max date of user’s last purchase. **min\_dt**: min date of user’s first purchase. **cust\_age**: months since first purchase. **trans\_cnt**: total count of transactions. **sum\_net\_revenue**: sum of net revenue. **avg\_ticket**: user’s avg net revenue purchase. **first\_purchase\_amt**: total sum revenue of first purchase. **last\_purchase\_amt**: total sum revenue of last purchase. **retail\_net\_rev**: total user net revenue that is from shopify or legacy order\_channel. **subscription\_net\_rev**: total user net revenue that is from order\_channel ‘subscriptions’. **other\_net\_rev**: total user net revenue that is from not retail or subscription. **retail\_trans\_cnt**: count user transactions that is from shopify or legacy order\_channel. **subscription\_trans\_cnt**: count user transactions that is from order\_channel ‘subscriptions’. **other\_trans\_cnt**: count user transactions that are from not retail or subscription. **pct\_net\_revenue\_is\_promo**: user’s sum of total\_promo / sum of net revenue. **sum\_promos**: user’s sum of total\_promo. **pct\_trans\_with\_promo**: percent of user’s transactions that had total\_promo>$0. **avg\_promo**: user’s average total\_promo per transaction. **first\_purchase\_has\_promo**: true if first purchase had total\_promo>$0, false otherwise. **First\_name**: user’s last listed first name. **Predicted\_gender**: simple first name match on known gender probabilities. **batch\_max\_date**: target date for the batch run, also max date of transactions in the batch run. **t**: time between max batch date and user’s first transaction. **recency**: time between max batch date and user’s last transaction. **frequency**: user’s total count of transactions. **frequency\_bucket**: user’s 1-5 bucket score, where 1 is best, 5 is worst, where {5 if 1 trans, 4 if 2, 3 if 3, 2 if 4, 1 if 5 or more transactions} **monetary**: sum of user’s net revenue. **predicted\_probability\_alive**: model probability of purchasing from tenant again. **predicted\_clr**: models customer lifetime revenue, equals (prob alive) \* (future purchases) \* (avg net revenue) **recency\_bucket**: user’s 1-5 bucket score, where 1 is best, 5 is worst, based on quantiles or recency over the past 370 days. **monetary\_bucket**: user’s 1-5 bucket score, where 1 is best, 5 is worst, based on quantiles or recency over the past 370 days. **rfm**: string that concatenates recency, frequency, and monetary buckets. For example a ‘1\_1\_1’ is a one for recency, frequency, and monetary, and 3\_1\_2 is a 3 for recency, 1 for frequency, and 2 for monetary. **rfm\_score**: simple rfm score (1/recency) \* frequency \* sqrt(monetary) **is\_current**: true if row is from the current batch run, false if from previous batch. **rfm\_score\_bucket**: user’s decile (1-10) score, where 10 is best and 1 is worst, based on rfm score. **monetary\_bucket\_min**: monetary bucket string for Chord Analytics graph legends. **monetary\_bucket\_max**: monetary bucket string for Chord Analytics graph legends. **monetary\_bucket\_ranges**: monetary bucket string for Chord Analytics graph legends. **recency\_bucket\_min**: recency bucket string for Chord Analytics graph legends. **recency\_bucket\_max**: recency bucket string for Chord Analytics graph legends. **recency\_bucket\_ranges**: recency bucket string for Chord Analytics graph legends. **frequency\_bucket\_min**: frequency bucket string for Chord Analytics graph legends. **frequency\_bucket\_max**: frequency bucket string for Chord Analytics graph legends. **frequency\_bucket\_ranges**: frequency bucket string for Chord Analytics graph legends.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.chord.co/model-your-data/predictive-models/customer-lifetime-revenue-clr/clr-and-rfm-data-table-glossary.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
