Guide

Salary Range Best Practices Across Multiple States

VT MN HI IL NJ WA CA CO NYC

If you hire across multiple US states — or in a mix of US and EU markets — the compliance picture for salary ranges is genuinely complicated. Colorado requires a range plus benefits and bonuses. New York City requires a good-faith range with scrutiny of unusually wide bands. California requires a range. Washington requires a range plus benefits. Illinois, New Jersey, and a growing list of other states all have their own requirements and thresholds.

Trying to track and satisfy each state's minimum requirement individually is operationally difficult and surprisingly risky — a posting that satisfies California may fall short in Colorado, a remote role open in NYC requires a range even if you're based in Texas. This guide cuts through the complexity with practical guidance on building a salary range approach that works everywhere.

The core principle: satisfy the most demanding state

The single most effective operational decision you can make is to post salary ranges on every single job, everywhere, formatted to satisfy the most demanding active state requirement — which is currently Colorado.

Colorado's Equal Pay for Equal Work Act requires: a salary range, a general description of benefits, and a description of bonuses, commissions, or other forms of compensation. If your posting satisfies Colorado, it satisfies every other active US law as a byproduct. This approach eliminates the complexity of matching each posting to each state's requirements — and eliminates the risk of missing a requirement as new states pass laws.

Several large employers — including Microsoft, Google, and many others — have adopted this approach explicitly. It's simpler to administer, produces better candidate experiences, and future-proofs you against new state laws.

State-by-state minimum requirements (as of 2026)

For teams that need to understand the specific requirements by state, here's the current picture:

"The companies that handle multi-state compliance best are those that decided to include everything everywhere — not those trying to match each posting to the minimum requirement of each state."

How to write a good salary range

Getting the format and content of salary ranges right is as important as including them at all. Common questions and best practices:

How wide should the range be?

Regulators and enforcement agencies are increasingly scrutinising very wide ranges. Practical guidance:

What about location-based pay differentials?

Many companies pay differently based on the candidate's location — San Francisco rates vs. Austin rates, for example. This is entirely permissible, and you can communicate it in the posting: "Salary range: $110,000–$150,000 (San Francisco Bay Area / NYC) or $80,000–$110,000 (other US locations)." This transparency is actually better candidate experience than a single artificially wide range intended to cover all geographies.

Annual vs. hourly?

Both formats are acceptable in most states. If a role could be classified as either (e.g. a part-time role that could be hourly or salaried), include both. For hourly roles, express the range per hour. For salaried roles, annual is standard.

Should you include OTE (on-target earnings) for commission roles?

For sales and other commission-heavy roles, including OTE alongside base salary range is best practice — particularly in Colorado and Washington where bonus/commission description is required. Example: "Base: $70,000–$90,000 + commission. On-target earnings: $130,000–$170,000."

Writing a compliant benefits description

For Colorado and Washington, the benefits description is mandatory. For all other states, it's best practice. What makes a good benefits disclosure:

Update your standard benefits block at least quarterly — if your benefits change and your posted descriptions don't, you're creating misleading postings even without intending to.

Multi-state salary range compliance, automated.
Role Canary checks every posting against the requirements of all active states — including remote roles.

Start free trial →

Building compliance into your ATS workflow

The most reliable approach is systemic: make it impossible to publish a job posting without including the required information. Practically:

  1. Add a mandatory salary range field (minimum and maximum) to your job requisition form — required before a role can be approved for posting
  2. Add a benefits block that auto-populates from a master template, with a quarterly review cycle
  3. Add a bonus/commission field for roles with variable compensation — required for any role with OTE or commission
  4. Configure your ATS to require these fields before publishing to any external job board
  5. Set up automated scanning to catch anything that slips through — individual hiring managers sometimes post directly to boards in ways that bypass your ATS

For the EU dimension of this, see our EU Pay Transparency Directive guide. For the broader national picture, see our State Law Roundup.

Don't leave compliance to chance

Role Canary scans every job ad automatically — so you catch issues before regulators do.

Start free 14-day trial →