Back to blog
Engineering12 min read

Why Does AI Turn Everything into a Bulleted List?

AI defaults to bullets from training bias, markdown-rendering chat interfaces, and stale custom instructions. The exact line that turns it off, and when lists are still right.

NH
Nafiul Hasan
Founder, Prompt Architects

TL;DR: AI turns everything into bullets because of formatting defaults baked in during training, reinforced by chat interfaces that render markdown automatically, and locked in further by custom instructions saved months ago and since forgotten. None of that means bullets are the right shape. A list flattens reasoning into disconnected fragments. One instruction line, in the right place, turns the habit off.

Why Does AI Turn Everything into a Bulleted List?

Ask any chat model a question with more than one moving part, and you will likely get back a wall of bullets: bolded mini-headers, three-word fragments, no connecting logic. That happens because of three things stacking on top of each other, none of them decided by the model in the moment, all of them decided long before your prompt arrived.

The training problem

Large language models are shaped after pretraining by reinforcement learning from human feedback (RLHF). Humans, or a reward model trained on human preferences, compare two candidate answers and pick the better one. A 2024 paper from researchers including Xuanchang Zhang, Wei Xiong, and Tong Zhang, From Lists to Emojis: How Format Bias Affects Model Alignment, found that "many widely-used preference models, including human evaluators, GPT-4, and top-ranking models on the RewardBench benchmark, exhibit strong biases towards specific format patterns, such as lists, links, bold text, and emojis." The same paper reports that injecting less than 1% biased training data measurably corrupted a reward model's judgment. In plain terms, whoever graded the training data liked bullets, so the model learned that bullets score higher, regardless of whether the content underneath was any good. The same researchers found the bias is directly exploitable: output tuned to satisfy a reward model's formatting preferences can inflate scores on public benchmarks such as AlpacaEval and the LMSYS Chatbot Arena without any real gain in answer quality, which is part of why providers keep tuning against it release over release rather than treating it as solved.

The interface problem

Every mainstream chat interface, ChatGPT, Claude.ai, Gemini, renders markdown live. Type two asterisks around a word and a dash before a line, and the interface paints a clean, scannable card instead of raw punctuation. That visual reward loop runs on every message: a bulleted answer looks more finished than a paragraph, even when it holds less actual reasoning. Wikipedia's own guidance for spotting AI-written text, Wikipedia: Signs of AI writing, names "inline-header vertical lists" directly as one of the tells editors now watch for, which says something about how consistent the pattern has become.

The instruction problem

The third cause is the one people forget they created. System prompts and saved preferences persist silently. If you ever wrote "use bullet points for clarity" into a saved instruction, that line applies to every future chat until someone deletes it, and most people never open that settings page again to check. OpenAI just made it easier to accumulate more of these: on July 15, 2026, it raised the ChatGPT custom instructions limit from 1,500 to 5,000 characters for Plus, Pro, Enterprise, Business, and Education plans, which means more standing instructions piling up per account, unaudited.

This compounds on a team. If one person's saved instruction, or a shared prompt template, said "use bullet points for clarity" for a completely different reason six months ago, everyone reusing that template inherits the habit without ever writing the line themselves. Prompt Architects' Team Sharing exists partly for this kind of drift: a shared library entry can be corrected once, for the whole team, instead of five people each carrying a slightly different, slowly diverging copy of the same stale instruction in their own personal settings.

What Do Bullets Actually Cost You?

Bullets flatten causal reasoning into parallel, disconnected fragments. They hide exactly the part of the answer that mattered: which claim depends on which condition, and what the actual recommendation is.

Three things get lost most often: which fact depends on which condition, what order things need to happen in, and which single line is the actual recommendation rather than supporting color. The example below loses all three at once.

The question: should we add a caching layer in front of the database?

Bulleted answer, the default:

  • Latency: caching reduces read latency
  • Complexity: adds cache invalidation logic
  • Read/write ratio: matters for cache hit rate
  • Consistency: risk of stale data
  • Recommendation: consider Redis

Five fragments, no logic connecting them, and the actual recommendation sitting on its own line with nothing underneath to back it up.

The same question, in prose:

A cache only pays for itself if the read-to-write ratio is heavily skewed toward reads, because every write has to either invalidate or update the cached copy, and that bookkeeping is exactly where caching bugs live. If the data changes about as often as it is read, the cache adds a whole failure mode, stale reads and invalidation races, without buying back much latency, since you would be repopulating the cache almost as often as you would have simply hit the database. Where it clearly wins is read-heavy, rarely-changing data, like a product catalog, because the invalidation logic stays simple when there are few write paths to track. Redis is a reasonable default there, but only once the read/write split actually favors it, not before.

Notice what changed. The prose version has exactly one recommendation, and it is conditional: it only holds if the read/write ratio favors reads. The bulleted version has five equally weighted lines and no way to tell which one should override the others if they conflict. That is the shape problem. Bullets present claims as parallel and independent, when the actual reasoning is sequential and conditional.

Neither format is wrong on its own. The mismatch is using bullets for reasoning that only prose can carry, or prose for a sequence that only a numbered list carries cleanly.
FeatureBulleted answerProse answer
Shows which claim depends on which condition
States one clear, load-bearing recommendationBuried on its own line
Scannable in under five seconds
Right shape for a numbered sequence of steps
Can hide missing reasoning behind formatting

How Do You Turn Off Automatic Bullet Points in ChatGPT?

Two places handle it: say it once in the message for a single chat, or save it in Settings for every future chat.

For one conversation, add a line like "answer in prose, no bullet points" to your message. For every conversation going forward, open Settings, then Personalization, then Custom Instructions (the interface currently splits this across a few boxes, including one asking how you would like ChatGPT to respond, or a newer traits box depending on which version you are on), and paste something like:

Default to flowing prose paragraphs, not bullet points or numbered lists, unless
I explicitly ask for steps or a ranking, or the content is genuinely a short set
of discrete, unordered items.

That box holds up to 5,000 characters on paid plans as of July 2026, so there is room for this instruction alongside whatever you already have saved, rather than needing to trim something else to fit it in.

How Do You Stop Claude From Defaulting to Bullet Lists?

Claude has three layers of standing instructions, and the fix goes in whichever one matches how broadly you want it applied: a note in the current chat, an account-wide Instructions for Claude in Settings for every chat, or Project instructions scoped to a single Claude Project.

Anthropic's own prompting documentation acknowledges the habit directly and gives an example instruction for reverting to prose. Reproduced here from Anthropic's prompting best practices guide:

<avoid_excessive_markdown_and_bullet_points>
When writing reports, documents, technical explanations, analyses, or any long-form
content, write in clear, flowing prose using complete paragraphs and sentences. Use
standard paragraph breaks for organization and reserve markdown primarily for `inline
code`, code blocks (```...```), and simple headings (## and ###). Avoid using **bold**
and *italics*.

DO NOT use ordered lists (1. ...) or unordered lists (*) unless: a) you're presenting
truly discrete items where a list format is the best option, or b) the user explicitly
requests a list or ranking
</avoid_excessive_markdown_and_bullet_points>

Paste that block into Instructions for Claude to apply it everywhere, or into a Project's Custom Instructions to scope it to one workspace.

What Goes in an API System Prompt to Stop List-Heavy Output?

The same instruction, passed as the system parameter on the Anthropic API or a system role message on the OpenAI API, since both read a standing instruction on every single call. That makes it the most durable fix of the three: it does not depend on remembering to paste something into a settings page, because it ships with the code. It also matters if a product is built directly on a model's response text: formatting drift between what a chat playground happened to return during testing and what the deployed system prompt actually specifies is a common, avoidable source of "it worked when I tried it" bug reports.

system_prompt = (
    "Default to flowing prose paragraphs. Do not use bullet points or "
    "numbered lists unless the user explicitly asks for steps or a "
    "ranking, or the content is genuinely a short set of discrete, "
    "unordered items."
)

That instruction is really just the Format slot in a prompt. The RTF framework, Role, Task, Format, spends its middle third on exactly this: specifying the output shape explicitly instead of leaving it to whatever the model defaults to.

When Is a Bulleted List Actually the Right Call?

When the content is genuinely a flat set of discrete, unordered items, or a strict sequence where the order itself matters more than any connecting logic. Anthropic's own carve-out above says it plainly: use a list when presenting truly discrete items, or when the user explicitly asks for one.

Three real cases hold up.

A sequence of setup steps where order changes the outcome, like installing a database before running migrations against it, is a legitimate numbered list. Get the order wrong and the reader's migration fails, so the numbering itself is carrying real information, not just visual tidiness.

A reference sheet where each line is independent of the others, configuration keys, keyboard shortcuts, a spec table, is a legitimate bulleted list too. Nothing on one line depends on the line above it, so there is no causal chain for bullets to flatten in the first place.

A handful of short, comparable facts across a small number of options is often better served by a table than either a list or a paragraph. A table shows the same comparison a list attempts, without forcing single-column reading order and without pretending five options are five unrelated facts when the point is to compare them against each other.

This complaint shows up constantly in real usage. Our own review of prompt patterns, in We Analyzed 10,000 ChatGPT Prompts, keeps turning up the same shape: someone asks for a decision and gets a list of considerations instead.

Pairing the format instruction with a role instruction compounds the effect. An assistant told to think like a specific expert, covered in Persona Prompting, tends to write like one too, in connected paragraphs rather than a shopping list of considerations, because experts explaining a judgment call reason out loud instead of itemizing.

If the actual question is which output format you need at all, prose, a table, JSON, a list, rather than just switching off the bullet default, the fuller decision framework lives in How to Decide What Output Format You Actually Need. For the rest of the defaults worth overriding in the same settings box, the prompt engineering cheat sheet covers them on one page.

Most of this comes down to one missing line in a prompt that otherwise looks complete. Prompt Architects' enhancer builds every prompt around five slots, Role, Task, Format, Constraints, Tone, and Format is the one people skip most often. It is exactly the slot that decides whether you get bullets or prose back.

Free Chrome Extension

Stop rewriting prompts. Start shipping.

Works with ChatGPT, Claude, Gemini, Grok, Midjourney, Ideogram, Veo3 & Kling. 5.0★ on the Chrome Web Store.

Create An Account

Frequently asked questions

Free Chrome Extension

Stop rewriting prompts. Start shipping.

Works with ChatGPT, Claude, Gemini, Grok, Midjourney, Ideogram, Veo3 & Kling. 5.0★ on the Chrome Web Store.

Create An Account