- Read time
- 2 min
- Words
- 308
Performance advice often arrives as a list of optimizations: compress images, split code, cache responses, reduce rendering, and measure Core Web Vitals. Each technique can help, but a product needs a clearer contract. A performance budget states which resource or user-visible delay is allowed to grow, by how much, and under which representative conditions.
The budget should follow the experience architecture. Static catalogs and long-form articles can remain server-rendered, sending useful HTML without a client runtime for every paragraph. Interactive tools can become small client islands loaded only where they are needed. Heavy dependencies should justify their transfer, parse, and execution cost through behavior that cannot be delivered more simply.
Measure at meaningful boundaries. JavaScript bytes, image weight, server latency, interaction delay, and layout stability reveal different risks. A fast local machine with warm caches is not a representative baseline. Use defined viewports, network conditions, and repeatable routes, then retain the evidence so a later change can be compared honestly.
Budgets also improve design decisions. A journal does not need a heavyweight runtime parser when structured content is known at build time. A chat history can use bounded keyset pagination instead of loading an unbounded collection. A typing test should keep keystroke state local instead of causing the entire application shell to render. These choices prevent cost before optimization becomes necessary.
Not every regression requires a rewrite. First identify the changed asset, dependency, query, or render path. Repair the narrow cause and rerun the affected measurement. If the budget must change because the product gained valuable behavior, record that tradeoff explicitly.
The objective is not the smallest possible bundle or the lowest isolated benchmark. It is a responsive experience with predictable resource use. A written, measured budget lets performance participate in planning, implementation, and review rather than appearing as a vague concern after the interface is already complete.