A hand typing on a glowing orange keyboard against a dark background, representing the act of writing a job posting

Most job postings read like an internal HR document leaked into the wild: a wall of generic requirements, a vague company blurb, and a salary range conspicuously absent. Then employers wonder why the only people who apply are wildly under- or overqualified.

The candidates you actually want decide whether to read past the first paragraph in under 30 seconds. Structure is what earns those 30 seconds.

Young team collaborating around a laptop in a loft office
Quality candidates decide in seconds whether the post is for them.
Below is a 7-part anatomy that works, followed by a teardown of how Airbnb does it across hundreds of roles, plus a checklist you can run before publishing.

The 7-part anatomy

Job posting anatomy: what each section must do
Part Must include Common miss
1. Company in one line What you sell / do, plain English “Leading solutions provider”
2. Why the company exists Real problem you solve Fluffy mission statement
3. Why this role Trigger for the hire right now “Join our growing team”
4. What you’ll do 3-6 concrete owned tasks Generic responsibility lists
5. Requirements Must-have vs nice-to-have One long undifferentiated list
6. Pay + upside Published salary range “Competitive salary”
7. Location + apply Work model + one easy apply path Vague “flexible” + long forms

1. What your company does, in one sentence

One sentence a smart stranger could repeat to a friend. "We sell payroll software to Thai SMEs" beats "we are a leading technology-enabled solutions provider." If a candidate skimming twelve postings can't tell what you do from your opening line, they skip you.

Generic vs concrete job-ad language
Section Weak Strong
Company "Leading solutions provider" "We sell payroll software to Thai SMEs"
Why the role "Join our growing team" "Lead the payments rebuild as we expand to Vietnam"
Responsibilities "Manage social media campaigns" "Own the LINE OA calendar: 4 campaigns a month, brief design, ship, report"
Pay "Competitive salary" "฿45,000-฿60,000 + performance bonus"

2. Why your company exists

Name the problem you are solving and why it matters, in one short paragraph. Not a fluffy mission statement, a real tension. Quality candidates use this section to decide whether your work matters to them, and self-select out if it doesn't, which saves everyone time.

3. Why this role exists

The single most-skipped section, and the biggest reason quality candidates lose interest. In two or three sentences, tell them what triggered the hire: a new market launch, a process breaking under scale, a senior departure. "We are hiring a Senior Backend Engineer to lead the payments rebuild as we expand into Vietnam and Indonesia" tells a candidate the scope and stakes. "Join our growing team" tells them nothing.

4. What you'll actually do

Replace generic responsibilities with three to six concrete tasks the person will own. Compare:

  • Generic: "Manage social media campaigns and analyze performance metrics."
  • Concrete: "Own the LINE OA campaign calendar end-to-end. Plan four campaigns a month, brief the design team, ship the broadcasts, and present results to the head of marketing."

The first filters nobody. The second filters in people who can do the work.

5. Requirements, tiered

Long undifferentiated lists shrink your applicant pool to people who either ignore the list or match it perfectly. Split into two:

  • Must-have (3 to 5 genuine deal-breakers). If you can't defend why an item is here, move it down.
  • Nice-to-have (3 to 5 items that accelerate ramp-up but aren't required).

This is the highest-impact change you can make: it gives candidates permission to apply when they have most but not all of what you want.

6. Compensation and what makes the job worth taking

Post a salary range. Quality candidates assume "competitive salary" means "below market and we know it." If you are unsure of the band, check the WorkVenture salary estimator before you publish. Then list what genuinely makes the job attractive: equity, the team, the technical stack, the customer base, real flexibility. Skip table-stakes items (health insurance, paid leave) unless yours is meaningfully better than market.

7. Location, schedule, and how to apply

Be specific. "Bangkok-based, hybrid, Tuesdays and Thursdays in office" beats "flexible work arrangements." Close with one link, one form, the minimum fields. Each extra hoop loses applicants.

What Airbnb gets right

Pull up any open Airbnb role and the same shape repeats every time, with the same section names. Six things they do that most companies miss:

Screenshot of an Airbnb Data Science Intern job posting showing the role title, location, and the opening company paragraph followed by a 'The community you will join' section
A live Airbnb posting. Clean role and location header, fixed company paragraph, then "The community you will join." The same shape repeats across hundreds of their open roles. Source: careers.airbnb.com.

1. A fixed company paragraph at the top

Every posting opens with the same paragraph: the 2007 founding story, today's host and guest numbers, one line about the mission. Identical across hundreds of roles. Candidates who already know the company skim it, candidates who don't get a 30-second briefing. Write yours once, reuse everywhere, refresh once a year.

2. Section names written in the second person

Not "Responsibilities" and "Requirements" but:

  • The Community You Will Join (the team)
  • The Difference You Will Make (the role's impact)
  • A Typical Day (responsibilities)
  • Your Expertise (requirements)
  • How We'll Take Care of You (compensation and benefits)

Same information, different psychology. "A Typical Day" puts the candidate in the role; "Responsibilities" puts the company on the page. Senior candidates notice.

3. Tiered requirements: Critical, Superpower, Ideal

Their "Your Expertise" section explicitly labels each requirement as Critical (deal-breakers), Superpower (rare skills that make a candidate stand out), or Ideal (accelerators, not required). Most companies dump twelve bullets into one list. Airbnb tells the candidate which lines actually matter, which is the difference between a qualified applicant applying and one self-rejecting.

4. A real "Difference You Will Make" section

This is where Airbnb says, in two or three sentences, what changes because the person takes the role: scope, stakes, cadence. From an Account Executive posting: "converting leads into net-new supply to support new-market launches", said with the quarterly cadence and full-funnel ownership baked in. Most postings spend a paragraph saying less.

5. Candid compensation context

"How We'll Take Care of You" doesn't bury the range. It explains how the range is set (training, transferable skills, experience, market), then publishes the actual range. Candidates respect the candor and self-select on real numbers.

6. Inclusion at the bottom, not the top

The final non-logistics section is "Our Commitment to Inclusion & Belonging." It lands where the candidate is deciding whether to apply, not at the top where it would feel performative. By the time someone reads it, they have already decided the role is interesting, and the inclusion statement removes the final hesitation.

Mistakes that scare off quality candidates

  • Ninja, rockstar, guru. Filters in candidates who think these words are normal.
  • "5+ years experience" with no context. Years is the laziest possible proxy. Specify what kind of experience, in what kind of environment.
  • "Competitive salary." Means "below market and we know it" about 70 percent of the time.
  • The same About Us at the bottom of every posting. If it's reusable across roles, it's not actually about this role.
  • Application forms with 18 fields and a cover letter. Each field beyond name, email, resume, and one short answer cuts your applicant pool.

The 60-second pre-publish checklist

  • Could a stranger explain what your company does after the first sentence?
  • Have you said why this specific role exists, not just that the team is growing?
  • Are responsibilities concrete tasks, not generic verbs?
  • Are requirements split into must-have and nice-to-have, five or fewer in each?
  • Is there a salary range?
  • Is the location, schedule, and work model specific?
  • Is the application one link, one form, minimum fields?

Yes to all seven puts your posting in the top 5 percent of what candidates see this week.

Where to publish

A well-structured posting on the wrong platform still underperforms. For hiring in Thailand, see our companion guides: 9 best free job posting sites in Thailand, the step-by-step how to post a job for free, and when free reach is not enough, free vs paid job posting.

Notebook and laptop ready for a final job-ad checklist
Run the checklist before you hit publish.

WorkVenture supports the structured, detailed format this guide describes, with no character limits and no fees for up to 15 active roles. Start posting your job free and put the framework into practice. After you publish, keep the rest of the funnel tight with how to find candidates in Thailand and the full Thailand recruitment process.

Frequently asked questions

Should I post the salary range in a job ad?

Yes. Good people skip ads that hide pay. A real range (even a wide one) gets better applicants and wastes less of your time on mismatches. Use the WorkVenture salary estimator to set a realistic Thailand band.

How long should a job posting be?

Long enough to say what the job actually is, short enough that someone can skim it between meetings. If a line does not help someone decide, cut it.

What is the biggest mistake in Thai job postings?

Treating the ad like an internal HR form: endless requirements, no pay, and the wrong language for how the team actually works day to day.

How many must-have requirements should I list?

Three to five things you would truly reject someone for. Everything else is a bonus. Long lists make strong people walk away.