Solve Complex Problems with High-Level Reasoning
On this page
Leveraging High-Level Reasoning
You now know when to enable reasoning. The next step is learning how to feed it. This lesson shows you exactly how to frame your requests so a model set to a high reflection level—High or Extra High in Chat, high to max in the API—delivers its best performance on complex problems.
The Art of Framing the Right Problem
A reasoning model isn’t an oracle: it’s only as good as the problems you give it. A well-framed problem yields structured reasoning and a reliable answer; a vague one produces disappointing results, no matter how much reasoning power you throw at it. OpenAI sums it up for its reasoning models this way: simple, direct instructions; explicit constraints; a crystal-clear end goal. Concretely, the difference comes down to four elements your request must always include.
- Context: Explain the situation in a few sentences.
- Data: Provide all numbers, constraints, and parameters.
- Objective: Specify exactly what you expect.
- Format: Indicate how you want the answer (table, detailed steps, final recommendation).
The gap between these two prompts illustrates the rule better than any explanation could.
Bad prompt: “Help me optimize my spending.”
Good prompt: “My annual marketing budget is €180,000. I have 4 channels: SEO (cost €3,000/month, estimated ROI 4.2x), Google Ads (cost €5,000/month, ROI 2.8x), LinkedIn Ads (cost €4,000/month, ROI 1.9x), and Content Marketing (cost €3,000/month, ROI 3.5x). I want to maximize overall ROI while keeping at least €2,000/month on each channel. Propose an optimal allocation with detailed calculations.”
The second prompt gives the model everything it needs to reason; the first forces it to invent missing data. That’s actually the most common pitfall: if you don’t provide the numbers, the model will make up its own assumptions, and your analysis will be built on sand. Always provide real data, and don’t forget to specify the expected format—without guidance, the model picks its own, which rarely works in your favor.
Multi-Constraint Problems
High-level reasoning shines when a problem combines multiple interacting constraints. The model identifies those constraints, checks their compatibility, finds a solution that satisfies them all, and—this is the often-overlooked part—flags any contradictory constraints instead of delivering an unworkable answer.
Project planning is a classic example:
“I need to deliver a project in 12 weeks with a team of 3 developers. Here are the 8 tasks with their dependencies and estimated durations: [detailed list]. Find the critical path and propose a schedule that minimizes the risk of delay.”
The model will build a mental Gantt chart, identify critical dependencies, and propose a reasoned schedule instead of just ordering the tasks.
Making the Result Verifiable
A reflex inherited from older models is to write “think step by step.” OpenAI now advises against this: its models already reason internally, and this instruction doesn’t improve the result—it can even degrade it. What you need isn’t more thinking, but an answer you can audit. So, in your output format, ask for the elements to verify:
“Give your recommendation, then the assumptions made, the key calculations, and a final verification of the result.”
This is your best protection against blind trust: even at the highest level, the model can make mistakes, and calculations driving high-stakes decisions must always be verified, ideally through data analysis or your spreadsheet.
Scenario Analysis, Debugging, and Diagnostics
At a high reasoning level, the model evaluates multiple scenarios and compares them against weighted criteria, making it a valuable aid for strategic decisions:
“I’m evaluating 3 vendors for a maintenance contract. Here are the criteria (weight in parentheses): price (30%), responsiveness (25%), technical expertise (25%), references (20%). Here is the data for each vendor: [data]. Analyze each scenario and recommend the best choice.”
The same mechanism applies to technical diagnostics. Faced with a problem whose cause isn’t obvious, high-level reasoning systematically explores hypotheses instead of stopping at the first plausible one:
“My Node.js application crashes randomly in production. Here are the logs from the last 5 crashes: [logs]. Crashes occur between 2 AM and 4 AM. Memory usage climbs progressively. Analyze possible hypotheses in order of probability.”
When the Problem Resists: Step It Up
If a problem stumps the High level, step it up rather than rewriting the prompt ten times: try Extra High or Pro in Chat, xhigh then max in the API, possibly with reasoning.mode set to pro. In ChatGPT Work and Codex, Max gives the model more time on a single task, while Ultra distributes a complex task across sub-agents working in parallel when it can be broken into independent chunks. These are last resorts, not default settings: most tasks don’t need them, and they consume significantly more resources.
Your Turn
An optimization problem. Submit this problem at a high reasoning level (High in Chat, high in the API):
“A company sells 3 products. Product A costs €50 to produce and sells for €120. Product B costs €80 and sells for €180. Product C costs €30 and sells for €65. Production capacity is 1,000 units per month. Product A requires 2 hours of production, B requires 3 hours, and C requires 1 hour. The workshop has 2,500 hours available per month. Maximum demand is 400 units for A, 300 for B, and 600 for C. How many of each product should be produced to maximize profit?”
Observe how the model frames the linear programming problem, defines variables, formulates constraints, and solves it step by step. You’ll see the four principles from this lesson applied to a single case: a precise statement, complete data, an explicit objective, and reasoning you can follow—and therefore verify. Finally, ask the data analysis tool to recalculate the solution and compare.
Official sources: Reasoning best practices (OpenAI API: simple instructions, no “think step by step” prompting, explicit constraints and objectives) · Reasoning models (effort levels, pro mode) · Models (ChatGPT documentation: Max and Ultra)
Key Takeaways
- Structure your prompts: context, data, objective, format
- High-level reasoning excels at multi-constraint problems and scenario analysis
- Don’t write “think step by step”: instead, ask for assumptions, key calculations, and verification in the response
- Always provide real data—don’t let the model guess
- If a problem resists, step it up (Extra High, Pro, xhigh, max; Max or Ultra in Work) and verify critical results