Post one job to 50+ job boards in a click. Start free.

POST A JOB

How to post a job on Google for Jobs

Google for Jobs is not a posting destination - it's a search experience that indexes job listings from other sources. You get on it by adding JobPosting structured data to a careers page or by using an ATS that syndicates to it.

Google for Jobs faviconUpdated May 24, 2026

What Google for Jobs is

Google for Jobs launched in 2017 as an enhanced search experience that aggregates job listings from across the web. It's free for both employers and candidates. Unlike Indeed or ZipRecruiter, Google does not host job listings on its own platform - it indexes them from third-party sites that publish in a structured format Google understands.

There are three ways to appear in Google for Jobs: post on a major board that already syndicates (Indeed, LinkedIn, Glassdoor, ZipRecruiter all do), use an ATS that publishes structured data and submits to Google's Indexing API (most modern ATSs including ParsleyHR), or self-host the listing on your own careers page with JobPosting schema markup and a job-postings sitemap.

google.com

Step-by-step: posting your job on Google for Jobs

6 steps, around 10-15 minutes start to finish.

  1. 1

    Decide your posting path

    Three routes lead to Google for Jobs: (1) post on a major syndicating board like Indeed or LinkedIn - they push to Google automatically; (2) use an ATS that publishes structured data and pings the Indexing API for you; or (3) self-host on your careers page with JobPosting schema. Most small businesses pick routes 1 or 2.

    Tip: If you've already posted on Indeed, you're already in Google for Jobs - Indeed syndicates by default. Check by Googling your exact job title plus location; if Indeed shows in the Jobs box, you're in.
  2. 2

    Self-host route: add JobPosting structured data

    On your careers page, embed JSON-LD JobPosting schema for each role. Required fields: title, description, datePosted, validThrough, hiringOrganization (with name and logo URL), jobLocation, and either baseSalary or a clearly-stated 'compensation not disclosed'. Optional but recommended: employmentType, qualifications, responsibilities, and applicantLocationRequirements for remote.

    Tip: Use Google's Rich Results Test (search.google.com/test/rich-results) to validate your markup before publishing. About 40% of self-hosted Job Postings fail validation on first attempt - usually missing baseSalary, missing validThrough, or hiringOrganization without a logo URL.
  3. 3

    Create a job-postings sitemap

    Google requires a separate sitemap entry that lists your active job postings, with the lastmod date reflecting the most recent post or update. Submit this sitemap in Google Search Console under Sitemaps.

    Tip: Set validThrough to a real expiration date, not 3 years out. Listings with realistic expiration windows get re-indexed faster on update than ones marked indefinitely valid - Google reads stale validThrough as a signal the page may be outdated.
  4. 4

    Verify in Search Console and ping the Indexing API

    Add your domain to Google Search Console, verify ownership, and submit your job-postings sitemap. For faster indexing on new posts, use the Indexing API to ping Google immediately when you publish a new role. The API is meant specifically for JobPosting and LiveStream content.

    Tip: First-time indexing typically takes 2-7 days even with the Indexing API ping. Subsequent posts on the same domain get indexed within hours once Google trusts the structured-data source.
  5. 5

    Confirm you're appearing

    Search Google with your role's title plus location (e.g. 'line cook brooklyn'). If you're in, you'll appear in the Jobs box (the boxed widget at the top of the SERP). You can also check Search Console under Performance > Search Appearance > Job Posting for click and impression data.

    Tip: If you don't appear after 7 days, the most common cause is a structured-data validation issue Search Console flagged but you missed. Open Search Console > Coverage > Errors and look specifically for JobPosting errors.
  6. 6

    Keep listings fresh

    Google for Jobs ranks fresh posts higher. Edit the description or update validThrough on long-running roles every 14 days to signal freshness. When you fill the role, set the job's status to 'closed' and remove it from your sitemap - leaving filled jobs live tanks your domain's job-posting trust score.

    Tip: Don't fake freshness by reposting with a new ID every two weeks. Google detects duplicate-posting patterns and demotes domains that do it. A single edit to an existing post is the safer freshness signal.

Google for Jobs pricing

TierPriceWhat you get
Google for Jobs indexing$0Free, always. Google doesn't charge employers or job boards for inclusion. Your costs come from whatever channel you use to publish (your ATS, your careers page hosting, or a paid job board if you go that route).

Google for Jobs is a free search feature. You only pay for the publishing tool you use to feed it.

Should you bother? Honest pros and cons

Pros
  • Free for everyone - no posting fee, no per-application fee, no ad spend required.
  • Massive top-of-funnel reach: Google for Jobs shows above the regular search results for job-shaped queries.
  • Quality of intent is high - candidates searching directly on Google for a role are typically further along than passive scrollers on Facebook.
  • Self-hosting on your careers page builds your own brand SEO over time, not the job board's.
Cons
  • Not a posting destination - you can't post directly to Google. You need a board or your own structured-data setup feeding it.
  • Self-hosting requires technical setup: JSON-LD schema, sitemap, Search Console verification, and ongoing maintenance. Most small business owners need a developer for the initial pass.
  • Indexing delays of 2-7 days on a fresh domain make Google for Jobs the wrong channel for urgent hiring.
  • No applicant pipeline of its own - Google sends candidates to your apply page; you handle the rest yourself.

JobPosting JSON-LD structured data (self-hosted careers page)

Drop this into the Google for Jobs description editor and replace the bracketed fields. Tuned to the formatting Google for Jobs renders cleanly.

<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "JobPosting",
  "title": "[JOB TITLE]",
  "description": "<p>[Full HTML description - responsibilities, qualifications, benefits.]</p>",
  "identifier": {
    "@type": "PropertyValue",
    "name": "[COMPANY NAME]",
    "value": "[unique-job-id]"
  },
  "datePosted": "2026-05-24",
  "validThrough": "2026-06-24T23:59",
  "employmentType": "FULL_TIME",
  "hiringOrganization": {
    "@type": "Organization",
    "name": "[COMPANY NAME]",
    "sameAs": "https://[your-domain.com]",
    "logo": "https://[your-domain.com]/logo.png"
  },
  "jobLocation": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "[123 Main St]",
      "addressLocality": "[City]",
      "addressRegion": "[State]",
      "postalCode": "[ZIP]",
      "addressCountry": "US"
    }
  },
  "baseSalary": {
    "@type": "MonetaryAmount",
    "currency": "USD",
    "value": {
      "@type": "QuantitativeValue",
      "minValue": [X],
      "maxValue": [Y],
      "unitText": "HOUR"
    }
  }
}
</script>

FAQ

Is Google for Jobs free for employers?

Yes. Google does not charge to be indexed in Google for Jobs. The only cost is whatever publishing channel you use to feed Google - which can also be free (your own careers page) or paid (Indeed sponsored, ZipRecruiter, etc.).

Can I post a job directly to Google?

No. Google for Jobs is an index of listings from across the web, not a posting destination. You publish on a third-party board (Indeed, LinkedIn, ZipRecruiter, etc.) or on your own careers page with JobPosting structured data, and Google pulls the listing from there.

How long does it take to appear in Google for Jobs?

If you post on a board that already syndicates (Indeed, LinkedIn, Glassdoor), typically within hours. If you self-host with structured data on a new domain, expect 2-7 days for first indexing. Subsequent posts on the same domain index faster once Google trusts the source.

Do I need a developer to set up Google for Jobs?

Only if you're self-hosting. If you use an ATS that publishes structured data (ParsleyHR does this automatically) or post on a major board, no developer is needed. The DIY path - editing your site's HTML to add JobPosting JSON-LD and creating a job-postings sitemap - usually requires technical help on the first pass.

Why isn't my job showing up in Google for Jobs?

The three most common causes: (1) structured-data validation errors visible in Search Console; (2) missing required fields (datePosted, validThrough, hiringOrganization with logo, baseSalary or 'compensation not disclosed'); or (3) the domain is too new and Google hasn't built trust yet. Test your markup at search.google.com/test/rich-results.

Does ParsleyHR publish to Google for Jobs?

Yes. ParsleyHR automatically publishes JobPosting structured data on your careers page, maintains the job-postings sitemap, and pings Google's Indexing API on every new post. You get indexed without writing a line of JSON-LD.

Post to Google for Jobs + 15 boards in one click.

Google for Jobs aggregates from everywhere. Posting on Indeed, LinkedIn, and your own careers page (via ParsleyHR) means Google sees the role from three sources - which Google reads as authority.