The Four Tiers of Job Description Complexity
Every job description scored through ShouldApply gets a complexity classification. The scoring engine counts distinct requirements, measures how many unrelated skill domains a single posting spans, flags seniority conflicts, and tallies years of experience requested. The result is one of four tiers.
Across all scored postings, roughly 41% land in the Overloaded or Unrealistic tiers. That means nearly half of what you're scrolling through on job boards was written by someone who doesn't have a clear picture of what the role actually needs.
The four tiers break down like this:
Realistic
0–36-8 requirements, focused on 1-2 skill domains. Seniority and experience levels align with the title. These postings know what they want.
Ambitious
3–59-11 requirements, maybe stretching into a third skill domain. Still reasonable. The company is reaching a little, but a strong candidate can cover most of it.
Overloaded
5–712-14 requirements spanning 3-4 domains. Seniority starts getting fuzzy. These were likely written by committee, with each stakeholder adding their own wish list.
Unrealistic
7+15+ requirements across 4+ unrelated domains. Often mixes IC and management duties. Years of experience requested don't match the title. Nobody meets these requirements. Nobody.
Paste any job description into the JD Complexity Score tool and see which tier it falls into.
Score a Job Description →How Many Requirements Is Too Many?
The sweet spot for a well-written posting is 6 to 8 distinct requirements. That's enough to describe the core of a role without drifting into fantasy.
Once you pass 12, you're in Overloaded territory. The scoring engine flags this because 12+ requirements almost always signal that the posting covers multiple jobs stitched together. A "Marketing Manager" who also needs advanced SQL, paid media buying experience, team leadership, and HTML/CSS proficiency isn't one role. It's three roles crammed into one headcount.
Unrealistic postings average 15+ distinct requirements. Some go as high as 20. At that point, the company is describing a fictional person. You could have 10 years of experience in the exact field and still only match 60% of what they're asking for.
The domain span signal matters just as much as raw count. A posting asking for Python, data modeling, and SQL is one domain (data). A posting asking for Python, Figma, cold outreach, and GAAP accounting is four domains. The more domains a single role spans, the less likely any one person covers all of them.
Average Complexity Score by Requirement Count
Source: ShouldApply analysis of 14,000+ job postings
Which Industries Write the Worst Job Descriptions
Tech and financial services consistently produce the most overloaded postings. Both industries tend toward large, bureaucratic hiring processes where multiple teams contribute to a single job description. The result reads like a grocery list instead of a role.
Trades, healthcare support, and retail tend toward Realistic or Ambitious tiers. These industries hire for specific, well-defined tasks. An electrician posting lists what certifications you need and what kind of work you'll do. There's no room for wish-list padding because the requirements are binary: you either have the license or you don't.
The root cause in overloaded industries is committee writing. A hiring manager drafts the core requirements. Then engineering adds their preferred tech stack. Then a VP adds "strategic thinking" and "cross-functional leadership." Then HR adds boilerplate about "fast-paced environments" and "wearing many hats." By the time it goes live, nobody owns the document and it describes nobody real.
Startups are a mixed bag. Some write tight, focused descriptions because they know exactly what gap they're filling. Others write Unrealistic postings because they genuinely want one person to do everything. The difference usually comes down to whether the founder has hired before.
Average JD Complexity Score by Industry
Source: ShouldApply analysis of 14,000+ job postings
The Top Signals That Flag a Posting
The complexity scorer doesn't just count bullet points. It looks for specific patterns that indicate a disconnected or inflated job description. Here are the most common signals that push a posting into Overloaded or Unrealistic territory.
Spans 4+ technical domains
When a single posting asks for front-end development, data analysis, DevOps, and project management, it's describing a team, not a person.
Asks for 12+ years of combined experience across listed skills
If every requirement comes with a "3+ years" tag, the total adds up fast. The scoring engine sums these and flags when the number gets absurd.
Mixes individual contributor and management responsibilities
"Write production code" and "manage a team of 6" in the same posting is a red flag. Those are different jobs with different career tracks.
Lists 15+ distinct tools or technologies
Python, R, SQL, Tableau, Power BI, Looker, Spark, Airflow, Docker, Kubernetes, Terraform, AWS, GCP, Jenkins, and Jira. That's not a job description. That's an entire engineering department's stack.
Seniority conflict
An "Associate" or "Junior" title paired with "5+ years of experience" and "lead cross-functional initiatives." The title says entry-level. The requirements say senior. Someone didn't coordinate.
The JD Complexity Score breaks down exactly which signals a posting triggers. Try it on a posting you're considering.
Score a Job Description →Do Unrealistic JDs Actually Hurt Your Score?
Yes, but not in the way you'd think. When a posting asks for everything, nobody scores well against it. That's the whole point of the complexity tier: it tells you whether a low score is about your gaps or about the posting being broken.
A 48 against an Unrealistic posting is normal. It doesn't mean you're unqualified. It means the posting was written to describe a person who doesn't exist. If you scored the same posting against 100 experienced professionals in that field, the average would still land somewhere in the 40s or 50s.
Compare that to scoring a 48 against a Realistic posting. That's a real signal. It means you're genuinely missing core requirements, and you should look at the fit score breakdown to understand what's costing you points.
This is why ShouldApply shows the complexity tier alongside your score. A high score against a Realistic posting is the strongest signal that a job is worth your time. A mediocre score against an Unrealistic posting is noise.
Is It Getting Better or Worse?
The honest answer: the data is still accumulating. ShouldApply has been scoring job descriptions for complexity since early 2026, and we don't have enough months of data to identify a clear trend with confidence.
Early signals aren't encouraging. Requirement inflation looks like it's continuing, particularly in tech and knowledge-work roles. Remote job postings tend to be more overloaded than on-site equivalents, possibly because companies feel they can demand more when the location barrier is gone.
We'll publish a proper analysis once we have 6+ months of longitudinal data. For now, the best thing you can do is check the complexity tier on any posting before you invest time in an application.
Average JD Complexity Score Over Time
Source: ShouldApply analysis of 14,000+ job postings
What to Do When You Hit an Overloaded Posting
Overloaded and Unrealistic postings aren't automatic skips. They just change how you approach the application.
If the posting is Overloaded (12-14 requirements), treat the requirements as a wish list. Focus on the top 3-4 bullet points. Those are the ones the hiring manager actually cares about. The rest got added by other stakeholders and will probably never come up in an interview. Apply if you cover those core requirements, even if your overall match percentage looks low.
If the posting is Unrealistic (15+ requirements), check the company first. Some organizations post these out of bureaucratic habit. Government agencies, large banks, and enterprise software companies are repeat offenders. The actual interview bar is often much lower than the posting suggests. Other times, an Unrealistic posting means the role is genuinely confused and the hiring process will reflect that.
Use your fit score as a tiebreaker. If two postings interest you equally and one is Realistic with a 72 while the other is Unrealistic with a 51, spend your energy on the first one. The Realistic posting is more likely to result in an interview because the company knows what they want.
And if you're wondering whether you should apply when underqualified, the complexity tier adds useful context. Being "underqualified" for an Unrealistic posting is a very different situation than being underqualified for a Realistic one.
Frequently Asked Questions
The Unrealistic tier triggers when a posting lists 15+ distinct requirements, spans 4 or more unrelated skill domains, mixes individual contributor and management duties, or has seniority conflicts (like a junior title with senior-level experience demands). It's not about one red flag. It's the combination that pushes a posting over the line.
Often, yes. Overloaded postings are wish lists. If you cover the top 3-4 requirements, you're a viable candidate. Unrealistic postings are riskier because the hiring process itself might be disorganized. Check if the company is a known repeat offender (large enterprises, government) where the posting bar is always inflated. If it's a startup with an Unrealistic posting, proceed with caution.
Committee writing is the main cause. A hiring manager drafts core requirements, then engineering, product, and HR each add their own items. Nobody edits the combined list, so a focused 7-requirement posting becomes a 16-requirement monster. Budget pressure plays a role too: when companies are trying to fill one headcount instead of two, they merge both roles into a single description.
Not directly. Interviewers rarely reference the full posting during conversations. They focus on the 3-5 skills that actually matter for the day-to-day work. But Unrealistic postings do correlate with longer, more disjointed interview processes because the company hasn't aligned internally on what they need.
Raw bullet count misses context. The scoring engine looks at domain span (how many unrelated fields a posting covers), seniority alignment (does the title match the experience level?), and combined years requested. A posting with 10 requirements in one focused domain scores lower on complexity than a posting with 8 requirements scattered across 4 domains.
Yes. Paste the full text of any job description into the tool at /tools/jd-complexity-score. It works on postings from any source: LinkedIn, Indeed, company career pages, or anywhere else. You don't need an account to use it.