# How to write a ChatGPT app listing people find

Open the 30-character subtitle with the user's task as a verb, describe the tasks, users and limits in a few hundred characters, add three starter prompts a new user can run, and start each tool description with "Use this when". On Oct 25, 2026, 65% of top-100 apps in US category lists open their subtitle with a verb, against 55% below #100.

October 25, 2026 · 19 min read

- Verb-first subtitles: 65% (top-100 apps, vs 55% below #100)
- Descriptions of 400+ characters: 50% (top-100 apps, vs 34% below #100)
- Apps with starter prompts: 87% (US category lists; 71% fill all 3)
- Descriptions opening "Use this when": 9% (of 20,403 tools behind US category lists)

![Illustration of a magnifying lens over a loose field of small tiles, most of them grey: under the lens the tiles are larger, and the one at its centre is green.](https://theopenapps.com/assets/blog/how-to-write-a-chatgpt-app-listing/hero-8a9e3402.webp)

*Illustration: OpenApps*

## Who reads a ChatGPT listing?

A ChatGPT [listing](https://theopenapps.com/glossary/listing) has three readers: people, the model and OpenAI's reviewers. OpenAI's [help article on plugins](https://help.openai.com/en/articles/20001256-plugins-in-chatgpt-and-codex) says people find a [ChatGPT app](https://theopenapps.com/glossary/chatgpt-app) under Plugins in ChatGPT's sidebar, in lists such as [Popular](https://theopenapps.com/glossary/popular-list) and each [category list](https://theopenapps.com/glossary/category-list), or as a suggestion in a chat. The model reads your tools: OpenAI's [metadata guide](https://developers.openai.com/plugins/guides/optimize-metadata) says ChatGPT decides when to call a tool from its name, description and parameter docs. Reviewers read everything against the [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines).

OpenAI replaced its App Directory with the Plugin Directory on Jul 9, 2026 ([release notes](https://help.openai.com/en/articles/6825453-chatgpt-release-notes)). Its docs now say plugin, and this post says app for the same thing.

OpenAI's release notes also say that since Aug 21, 2026, rankings on web and mobile favour apps people keep using after they install them ([retention-weighted ranking](https://theopenapps.com/glossary/retention-weighted-ranking)). OpenAI's [use-case planning page](https://developers.openai.com/plugins/plan/use-case) says the listing, starter prompts included, sets what users expect. So a listing that promises more than the app does sets up the drop-off that the ranking now counts against.

Every field below comes from the app's manifest, and the [submission guide](https://developers.openai.com/plugins/deploy/submission) sets the limits. Apart from these fields, your tools and how many people keep using the app, we have not found another documented lever for app store optimization.

Our numbers cover the apps in the 13 category lists of the US directory, called US category lists below. A new app is one launched in the last 8 weeks (see [new launches](https://theopenapps.com/charts/new/chatgpt)). The last column shows what US category lists use on Oct 25, 2026:

| Field | Manifest key | Limit at final submission | US category lists, Oct 25, 2026 |
| --- | --- | --- | --- |
| Name | `displayName` | 30 characters, one line (`submission_display_name_too_long`) | median 10 characters |
| Subtitle | `shortDescription` | 30 characters, one line (`submission_subtitle_too_long`) | median 27; 12% use all 30 |
| Description | `longDescription` | 4,000 characters (`submission_description_too_long`) | median 273; longest 3,960 |
| Starter prompts | `defaultPrompt` | 3, of 128 characters and one line each (`plugin_default_prompt_too_long`) | 71% fill all 3; median prompt 55 |
| Keywords | `keywords` | no limit stated | set by 51% of new apps, 8% of older ones |
| Category | `category` | required; one of 13 documented values (`plugin_category_unknown`) | each app sits in one category list |
| Skills | the `skills/` folder | skill description 1,024 characters (`skill_description_too_long`) | 34% of apps carry skills |

The help article says a person who opens a listing sees its description, skills, apps and setup requirements. So skill names and descriptions are listing copy too.

The package check is looser than the final one. The [submission errors reference](https://developers.openai.com/plugins/deploy/submission-errors) accepts a name of 80 characters, a subtitle of 240 and a starter prompt of 512 at upload, then holds them to 30, 30 and 128 at final submission. A package that uploads can still fail, so write to the final limits from the start.

![The Final directory submission section of OpenAI's submission errors reference, with two marks: 1 the sentence saying a package can pass upload validation and still fail final submission, and 2 the Final submission rule table, which holds the display name and short description to 30 characters, the long description to 4,000 and each of up to 3 starter prompts to 128.](https://theopenapps.com/assets/blog/how-to-write-a-chatgpt-app-listing/final-rules-c1a078b6.webp)

*Screenshot: developers.openai.com, Oct 25, 2026*

On every field below, new and older apps differ more than the top 100 and the rest do:

**What a ChatGPT listing looks like, by rank and age**

| Apps | Verb-first subtitle | Median description, characters | All 3 starter prompts | Keywords set | Screenshots |
| --- | ---: | ---: | ---: | ---: | ---: |
| Popular (50) | 76% | 437 | 66% | 24% | 32% |
| Top 100 of a category list | 65% | 397 | 57% | 10% | 40% |
| Below #100 | 55% | 252 | 73% | 33% | 15% |
| New (last 8 weeks) | 50% | 159 | 85% | 51% | 4% |
| Older | 62% | 392 | 58% | 8% | 32% |

*Top-100 apps open the subtitle with a verb more often (65% against 55%) and write longer descriptions; new apps fill all 3 starter prompts more often and set keywords far more often (51% against 8%). All of these are correlations. Source: OpenApps data, Oct 25, 2026.*

## What should the name and subtitle say?

Make the name your brand, short, with no "MCP" or "Plugin" on the end. Open the 30-character subtitle with a verb for the user's task, such as "Find" or "Manage", and leave out the app's name and "AI".

Names are short at every rank. The median name in US category lists is 10 characters, and 55% are one word (68% in Popular). Longer names, such as a brand paired with a task, are no more common at the top: 14% of top-100 names run 21 characters or more, against 16% below #100. The [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines) say to avoid generic names, especially dictionary words not tied to your brand, and forbid appending "MCP", "MCP Server" or "Plugin" to a product name. 42 names in US category lists still carry "MCP" as a separate word.

The store pages rule out the following:

| Field | Ruled out | Store page |
| --- | --- | --- |
| Name | generic dictionary words not tied to your brand; "MCP", "MCP Server" or "Plugin" on the end | [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines) |
| Subtitle and description | comparisons with other products, disparaging alternatives, unverifiable claims, prices, subscriptions, free trials, discounts and promotions | plugin guidelines |
| Starter prompts | duplicates, @mentions, a second line, more than 128 characters | [submission errors reference](https://developers.openai.com/plugins/deploy/submission-errors) |
| Tool text | empty descriptions; text that steers the model toward your app or away from others | plugin guidelines |
| The whole app | anything that implies OpenAI made or endorsed it | plugin guidelines |

![The Plugin name, description, and prompts section of OpenAI's plugin guidelines, with two marks: 1 the sentence saying screenshots are no longer shown in the Directory and asking for example prompts instead, and 2 the rules for names and for subtitles and descriptions.](https://theopenapps.com/assets/blog/how-to-write-a-chatgpt-app-listing/name-rules-3bcb260c.webp)

*Screenshot: developers.openai.com, Oct 25, 2026*

The subtitle is where listings differ. 57% of subtitles in US category lists open with a verb, and the share rises toward the top: 65% of top-100 apps and 76% of Popular's 50, against 55% below #100. The top 100 has the higher share in 8 of 10 categories with more than 100 apps; Finance and Other are the exceptions. For a live example, [Remote Desktop Commander](https://theopenapps.com/chatgpt/apps/remote-desktop-commander), in Popular, has the subtitle "Use your computer from chat".

**First words of ChatGPT app subtitles**

| First word | Subtitles | In its category's top 100 |
| --- | ---: | ---: |
| Find | 742 | 109 |
| Manage | 384 | 50 |
| Create | 361 | 76 |
| Search | 291 | 42 |
| Build | 233 | 32 |
| Your | 214 | 17 |
| AI | 168 | 17 |
| Plan | 165 | 15 |
| Track | 122 | 18 |
| Analyze | 122 | 34 |
| Explore | 113 | 16 |
| Check | 100 | 10 |
| Compare | 97 | 7 |
| Run | 91 | 15 |
| Get | 71 | 14 |

*"Find" opens 8% of subtitles in US category lists, and 13 of the 15 most common first words are verbs. Source: OpenApps data, Oct 25, 2026.*

A verb-first subtitle names the job, and the job is what a person scanning the list is looking for. In the 12 categories other than Other, only 3.9% of subtitles contain the category's own word, such as "Finance"; the list already shows it. Two habits waste the space. 2% of subtitles start with the app's own name, which sits right above them; 6 of 1,197 top-100 apps do it, and none of Popular's 50. And 7% to 8% of subtitles at every rank contain "AI", which tells a ChatGPT user nothing new.

Age explains part of the gap in verb-first subtitles. New apps open with a verb 50% of the time and older apps 62%. Among older apps alone, the top 100 leads the rest by 65% to 61%. So the gap holds among older apps, but it shrinks from 10 points to 4. Like every split here, it is a correlation (see the limits below).

A rewrite for an invented CRM called Acme shows the pattern:

| Field | Before | After |
| --- | --- | --- |
| Name | Acme CRM MCP Server | Acme CRM |
| Subtitle | Acme MCP: AI-powered CRM | Find and update CRM deals |

The first subtitle repeats the name, adds "MCP" and "AI", and names a product type. The second fits in 25 characters and says what a user can do.

## How long should the description be?

Write a few hundred characters, more than most apps do. The median description in US category lists is 273 characters. Top-100 apps write a median of 397 against 252 for the rest, and the top 100 writes longer in each of the 10 categories with more than 100 apps. The 4,000-character cap rarely binds: the longest description is 3,960 characters, and 2% run to 1,600 or more.

**Description length, top 100 vs below #100**

| Characters | Top 100 | Below #100 |
| --- | ---: | ---: |
| 0 to 99 | 7.5% | 15.9% |
| 100 to 199 | 13.5% | 26.4% |
| 200 to 399 | 29.3% | 24.1% |
| 400 to 799 | 30.6% | 22.4% |
| 800 to 1,599 | 14.6% | 9.6% |
| 1,600+ | 4.5% | 1.7% |

*50% of top-100 apps write 400 characters or more, against 34% of apps below #100. Source: OpenApps data, Oct 25, 2026.*

New apps write shorter descriptions than older ones: a median of 159 characters against 392, and 60% of new apps stay under 200. The gap holds inside the top 100 (185 against 422), so new apps write short descriptions at every rank.

OpenAI sets what goes in the description. The [submission guide](https://developers.openai.com/plugins/deploy/submission) describes `longDescription` as "tasks, intended users, and limitations". The [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines) rule out comparisons with other products, unverifiable claims, and any pricing, trial or promotion.

The first word of a description doesn't separate the top from the rest. About a third of descriptions start with the app's name at every rank, so spend the effort on content.

|  | Acme description |
| --- | --- |
| Before | Acme is the leading AI CRM. Try it free today! |
| After | Search, update and summarize the deals in your Acme pipeline from a chat. Ask for deals by stage, owner, amount or close date, log a call note against a deal, or get a summary of what changed this week. Built for sales reps and managers who already use Acme. It reads and edits only the deals your account can see, does not send email or change contacts, and needs an Acme account to sign in before it reads anything. |

The first version makes an unverifiable claim and a promotion, both against the guidelines. The second runs a little over 400 characters and names the tasks, the users and the limits.

## What makes a good starter prompt?

A good starter prompt is a task a new user can run on the first try, in their own words. Starter prompts are the norm: 87% of apps in US category lists show at least one, and 71% fill all 3. The median prompt is 55 characters, under half the 128-character cap. The [submission errors reference](https://developers.openai.com/plugins/deploy/submission-errors) also asks that each prompt be unique, fit on one line and carry no @mention.

![OpenApps' page for SentinelX, #4 in ChatGPT's Developer Tools list and #11 in Popular, with two marks: 1 the description, which opens by saying the app manages Linux, macOS and Windows servers from ChatGPT, and 2 the Starter prompts panel with 3 prompts, each a task such as listing every host with its uptime and free disk and RAM.](https://theopenapps.com/assets/blog/how-to-write-a-chatgpt-app-listing/listing-page-c30c30bd.webp)

*Screenshot: theopenapps.com, Oct 25, 2026*

Starter prompts are fuller below the top 100 than in it: 57% of top-100 apps fill all 3 prompts, against 73% below #100. Age explains most of it. New apps fill all 3 most often (85%, against 58% of older apps), and inside the top 100, 109 of 125 new apps do. Most of the top 100's unfilled prompts belong to older listings, so don't copy them.

Prompts replaced screenshots. The [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines) say screenshots are no longer shown in the directory and ask for example prompts instead. 18% of apps in US category lists still carry screenshots, and older listings carry them far more often (32%, against 4% of new apps).

The submission errors reference allows screenshots only when your MCP server renders a custom UI. Then it wants one per starter prompt, each exactly 706 pixels wide and 400 to 860 pixels tall. A submission whose tool scan finds no UI template fails with `screenshots_not_allowed`, and a skills-only ZIP with screenshots fails with `screenshot_configuration_excluded`. Leave `screenshots` out unless your server renders a custom UI.

| Before | After |
| --- | --- |
| Use Acme | Show my deals closing this month, largest first |
| What can you do? | Which of my deals have had no activity in 30 days? |
| Acme help | Summarize what changed in my pipeline this week |

Each prompt in the After column is a different task. Add the app's name and each one becomes a direct prompt for your test set (next section). Keep each prompt to something the app does today: OpenAI's [use-case planning page](https://developers.openai.com/plugins/plan/use-case) counts starter prompts among the things that set what users expect.

## What does ChatGPT read when it picks a tool?

ChatGPT reads your [tools](https://theopenapps.com/glossary/mcp-tool): their names, descriptions and parameter docs, according to OpenAI's [metadata guide](https://developers.openai.com/plugins/guides/optimize-metadata). The [help article on plugins](https://help.openai.com/en/articles/20001256-plugins-in-chatgpt-and-codex) says ChatGPT uses an installed app on its own when the app fits the request, and a user can also pick one with an @mention, with + and the app's name, or from Plugins in the composer. So tool text decides when an installed app runs. People who haven't installed the app meet it in the directory or as a suggestion in a chat, and there the listing is what they read. OpenAI's [custom MCP server guide](https://developers.openai.com/api/docs/guides/custom-mcp-server) adds the server's `instructions` field, for guidance that spans tools, and says to keep its first 512 characters self-contained. We have not found an OpenAI page that says which listing fields directory search reads, or how ChatGPT picks an app to suggest in a chat. The [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines) say only that apps with strong utility and user satisfaction may be eligible for wider distribution, such as directory placement or proactive suggestions.

Few tool descriptions follow OpenAI's advice. 22% of apps in US category lists link an [MCP server](https://theopenapps.com/glossary/mcp-server) that lists its tools without sign-in; the median one has 5 tools. Across their 20,403 tools, 89% have snake_case names, but only 9% of descriptions open with "Use this when" or "Use when", the opening the metadata guide suggests. 5.4% have no description at all, and all of those sit on 5 servers. The guidelines require a description on every tool and say an unclear one can get the app rejected.

The metadata guide's method, in order:

1. In ChatGPT on the web, open Plugins, select the plus button, then **Add custom MCP server**, and finish with **Create as a plugin**.
2. Install the plugin that ChatGPT creates, so you can use it in a chat.
3. Write a test set of prompts: direct ones that name your app, indirect ones that describe the outcome without naming it, and negative ones that another tool should handle. Write down the expected behaviour for each.
4. Name each tool for its domain and its action, such as `search_deals`.
5. Start each description "Use this when ..." and name what the tool is not for.
6. Describe each parameter, with an example and its allowed values.
7. Set [readOnlyHint](https://theopenapps.com/glossary/readonlyhint), [destructiveHint](https://theopenapps.com/glossary/destructivehint) and openWorldHint truthfully ([tool annotations](https://theopenapps.com/glossary/tool-annotations)), and write a one-line justification for each value.
8. Deploy one metadata change to your server at a time, then pull the new tools and descriptions into ChatGPT from the app's page in its app settings.
9. Rerun the set and record which tool ran (precision) and whether it ran when it should have (recall).
10. Get precision on the negative prompts high before you chase recall.
11. Pick five positive prompts and three negative ones from the set as your review test cases; initial MCP review needs exactly that many.

The store pages disagree on justifications. The [submission errors reference](https://developers.openai.com/plugins/deploy/submission-errors) still requires one for each annotation value at final submission (`justification_required`), while the plugin guidelines say they are no longer required. Write them anyway. [How to submit an app to the ChatGPT app directory](https://theopenapps.com/blog/how-to-submit-a-chatgpt-app) covers the test cases and the rest of review.

|  | Tool name | Description |
| --- | --- | --- |
| Before | `acme_tool` | Acme tool. |
| After | `search_deals` | Use this when the user asks to find deals by stage, owner, amount or close date. Returns each deal's name, stage, amount and close date. Do not use for contacts or email. |

The guidelines also forbid tool text that steers the model toward your app or away from others. [What MCP tool design teaches](https://theopenapps.com/blog/what-mcp-tool-design-teaches) covers tool counts, annotations and output schemas.

## Keywords, category and capabilities

`keywords` is documented only as an "array of discovery terms" in the [submission guide](https://developers.openai.com/plugins/deploy/submission). Most new apps set keywords, and few older ones do. We can't see whether directory search reads them, so add a few terms people would type and don't expect them to carry a weak subtitle.

`category` puts the app in one category list, and that list is where its rank lives. [How ChatGPT orders its app directory](https://theopenapps.com/blog/how-chatgpt-orders-its-app-directory) explains the lists, and [How do I get on a ChatGPT home shelf?](https://theopenapps.com/blog/how-to-get-on-a-chatgpt-home-shelf) shows how a list's top becomes a shelf.

![OpenApps' chart of ChatGPT's Developer Tools list in the United States on Oct 25, 2026, with SentinelX's row at #4 marked.](https://theopenapps.com/assets/blog/how-to-write-a-chatgpt-app-listing/category-list-43d0c1db.webp)

*Screenshot: theopenapps.com, Oct 25, 2026*

The values in the [submission errors reference](https://developers.openai.com/plugins/deploy/submission-errors) don't match the 13 category lists one to one. The docs offer "Education & Research" and "Entertainment", while the directory shows Education and Scientific Research as separate lists and has no Entertainment list. Our data shows where each odd value lands, and the docs cover the two cases we can't count:

| Value in `category` | List the app sits in | Apps in US category lists |
| --- | --- | --- |
| `Education & Research` | Education | 615 of 616 |
| `Entertainment` | Other | 296 of 296 |
| Key left out | Other at upload, according to the submission errors reference; final submission requires a value, so set one | Data is not available |
| Empty string | none: the upload fails with `plugin_category_empty` | Data is not available |
| `Scientific Research` | Scientific Research; the docs don't offer this value, and an unknown value fails with `plugin_category_unknown` | 34 of 34 |

Apps with any other documented value sit in the list of the same name, with 43 exceptions. In three small lists, Communication, Security and Scientific Research, every app is in the top 100.

`capabilities` takes up to 20 labels of 120 characters each. The [submission guide](https://developers.openai.com/plugins/deploy/submission) requires it in the Codex format (`.codex-plugin/plugin.json`), so put `[]` there if you have none; the Agent Plugins format leaves it optional. The format decides this, not where the app runs: the [plugin guidelines](https://developers.openai.com/plugins/plugin-guidelines) call the directory one shared by ChatGPT and Codex, OpenAI's coding agent. We have not found where ChatGPT shows the labels.

## Checklist for the listing fields

Before you start, you need an app package and a verified developer identity; [How do I submit an app to ChatGPT?](https://theopenapps.com/blog/how-to-submit-a-chatgpt-app) covers both. The listing keys go in `extensions["com.openai"].interface` (in the Codex format, the root `interface`), and `keywords` goes at the manifest root. Then fill the fields in manifest order:

1. **`displayName`:** your brand or product name, 30 characters or fewer, not a generic dictionary word, with no "MCP", "MCP Server" or "Plugin" on the end, and with nothing that implies OpenAI made or endorsed it.
2. **`shortDescription`:** the job, verb first, on one line of 30 characters or fewer, without the app's name or "AI".
3. **`longDescription`:** the tasks, the intended users and the limits, in a few hundred characters, with no comparisons, unverifiable claims, prices or promotions.
4. **`defaultPrompt`:** three different tasks a new user can run on the first try, each one line of 128 characters or fewer, with no @mention.
5. **`keywords`:** a few terms people would type to find an app like yours.
6. **`category`:** required. Set the documented value whose list your users browse. `Entertainment` lands in Other, and an empty string fails with `plugin_category_empty`.
7. **`capabilities`:** up to 20 short labels. The Codex format (`.codex-plugin/plugin.json`) requires the key, so use `[]` if you have none; Agent Plugins leaves it optional.
8. **Icon and links:** add a `logo` (plus a `composerIcon` in the Codex format) and the four HTTPS links MCP review needs: `websiteURL`, `supportURL`, `privacyPolicyURL` and `termsOfServiceURL`. The directory takes the developer name from your verified identity, whatever `developerName` says.
9. **Translations:** add them if you like, but the submission guide says they don't yet change the text shown in the directory.
10. **Tools:** give every tool a domain-and-action name, a "Use this when" description and honest hints with a justification for each, then run the test set again.
11. **Limits:** check every field against the final submission limits, not the upload limits. A field over them fails with an error such as `submission_subtitle_too_long`.
12. **Listing text after approval:** if the app went through the old submission form, open it, select the published version and choose **Download release ZIP** from the **…** menu. Edit the text and raise `version`. Zip the complete package, because the new version replaces the published one and keeps only what the ZIP holds. Select **Upload plugin to make changes**, pass review, then select **Publish plugin** on the approved version. Only one review can be active per app ([update your published plugin](https://developers.openai.com/plugins/deploy/submission#update-your-published-plugin)).
13. **Tool text after approval:** deploy the change to your server, open **MCPs**, choose the server and select **Rescan** under **Issues**, then check whether each update is live or held. A held tool keeps its approved text, and a new tool stays unavailable until it is approved ([update to your MCP server](https://developers.openai.com/plugins/deploy/submission#update-to-your-mcp-server)).

Timing and countries are in the [ChatGPT app launch checklist](https://theopenapps.com/blog/chatgpt-app-launch-checklist). For other stores, see [How do I write a Claude connector or plugin listing?](https://theopenapps.com/blog/how-to-write-a-claude-listing), [How do I write a Cursor plugin listing?](https://theopenapps.com/blog/how-to-write-a-cursor-plugin-listing) and [How do I submit an app to every AI app store?](https://theopenapps.com/blog/how-to-submit-an-app-to-ai-app-stores).

## What the listing data can't tell you

- **Cause.** Every comparison here is a correlation. Popular and the top 100 include big brands, such as GitHub, Canva, Slack, Notion and Google Drive, that rank for reasons the copy doesn't explain. Nothing here shows that a wording change moves a rank.
- **Age.** 49% of the apps in US category lists launched in the last 8 weeks. New apps sit lower in the lists than older ones: they make up 10% of top-100 apps. Read each top-vs-rest split beside the new-vs-older one.
- **Use.** Rankings now weigh retention, and we can't see retention, installs, search queries or how often ChatGPT suggests an app. So we can't say which listing field, if any, drives any of them.
- **Tools.** Tool numbers cover only the 22% of apps in US category lists whose server lists its tools without sign-in, and only 4 of Popular's 50, so there is no Popular comparison for tools.
- **Word lists.** "Starts with a verb" uses a fixed list of English verbs. It matched 56 of 60 subtitles we checked by hand, so the verb shares run slightly low, and subtitles in other languages count as not verb-first.
- **Scope.** These are the US category lists only. Data for other countries is not in this study.

> **Track the edit**
> 
> After a listing edit goes live, check the new text in the Changes tab of your app's page and the app's place in its [category list](https://theopenapps.com/charts/chatgpt) over the following weeks, not the first day.

## See the data

- [ChatGPT category lists](https://theopenapps.com/charts/chatgpt)
- [How to submit an app to the ChatGPT app directory](https://theopenapps.com/blog/how-to-submit-a-chatgpt-app)
- [What MCP tool design teaches](https://theopenapps.com/blog/what-mcp-tool-design-teaches)
- [Retention-weighted ranking](https://theopenapps.com/glossary/retention-weighted-ranking)
