Job Posting

You can improve the job seeking experience by adding job posting structured data to your job posting web pages. Adding structured data makes your job postings eligible to appear in a special user experience in Google Search results. You can also integrate with Google by using a third party job site. For employers and job content site owners, this feature brings many benefits:

  • Prominent place in Search results: Your postings are eligible to be displayed in the dedicated Job Search UI, featuring your logo, reviews, ratings, and job details.
  • More, motivated applicants: The new user experience enables job seekers to filter by various criteria like location or job title, meaning you’re more likely to attract applicants who are looking exactly for that job.
  • Increased chances of discovery and conversion: Job seekers will have a new avenue to interact with your postings and click through to your site.


Here is an example of job search results.

Job posting example in search results

See an example for an individual job posting using JSON-LD code in the Structured Data Testing Tool.

Create a job posting

  1. Ensure that Googlebot can crawl your job posting web pages (not protected by a robots.txt file or robots meta tag).
  2. Ensure that your host load settings allow for frequent crawls.
  3. Add job posting structured data to your web page.
  4. If you have several copies of the same job posting on your site hosted under different URLs, use canonical URLs on each copy of the page.
  5. Test and preview your structured data.
  6. Keep Google informed by submitting sitemaps. Follow the sitemap guidelines.
  7. If you have a high change rate, which means you have more than 100,000 job postings or more than 10,000 changes per day, contact us.

Remove a job posting

To remove a job posting that is no longer available, do one of the following actions:

  • Remove the JobPosting markup from the page.
  • Remove the page entirely (so that requesting it returns a 404 or 410 status code).
  • Add a noindex meta tag to the page.
  • Ensure the validThrough property is populated and in the past.


You must follow the general structured data quality guidelines and technical guidelines, as well as job posting content guidelines, to be eligible to appear in the Google job search experience. You should also follow our indexing guidelines so that we can properly index and rank your pages. In addition, the following guidelines apply to job posting structured data:

  • Add a JobPosting element for each job posting that you want to advertise. The structured data should appear on the same page as the job description that job seekers can read in their browser.
  • Don’t add structured data to listing pages (pages that show a list of jobs).
  • Most properties should only occur once in your job posting web page, unless the description specifically indicates that it can be added more than once.

Sitemap guidelines

Your sitemap informs Google of additions, changes, or removals to your job postings. We recommend that you update your sitemap any time you make changes to your job postings. You must follow the general sitemap guidelines. In addition, the following sitemap guidelines apply to job posting structured data.

  • Update your sitemap at least daily and as often as hourly. If your sitemap is not updated at least daily, your job postings may not appear in the feature. If you need to update your sitemap more often than this, contact us.
  • Include only URLs that can be accessed by Googlebot. Be sure that the URLs you include in the sitemap are not behind a firewall or disallowed by your robots.txt file.
  • Use as accurate a time as possible for the <lastmod> (sitemap), <pubDate> (RSS), or <updated> (Atom) values to indicate when the page was added or changed. The value should be the last time that the content at the URL changed. It's important that you use accurate times; crawl bandwidth is limited and accurate times help us avoid re-crawling pages that haven't changed. In addition, the more Google has to crawl your pages, the more load will be placed on your servers.
  • Inform Google every time you update your sitemap by sending a GET request to the following URL:

    For example:

    We will ingest the entire sitemap and recrawl the pages with lastmod times that are more recent than the last time those pages were crawled.

  • Do not include search results pages, list pages, or other dynamic pages in the sitemap.
  • The URLs in the sitemap should include the canonical page for each job posting.

Google uses the same logo for your job postings as the image shown in your company’s Knowledge Graph card. You can suggest a change if you prefer a different logo, or else indicate your preferred logo (for both your company’s Knowledge Graph card and its job postings) using markup.

If you have a third-party job site, you can provide a different logo for a given organization than the image shown in the organization's Knowledge Graph card. Google will pick the best logo to display in Search results, whether it's the Knowledge Graph logo or the hiringOrganization logo. The logo property is only eligible to be shown on your job site, and isn't treated as the canonical logo for the organization. For more information, see hiringOrganization.

Review snippet guidelines

If you collect reviews about employers, you can add review snippet structured data. Here is an example of a job posting with review snippet.

Job posting with review snippets in search results

The following guidelines apply to review snippets for employers:

Structured data type definitions

This section describes the structured data types related to job postings.

You must include the required properties for your structured data to display in search results. Any job posting that is missing the required fields will not be considered for enhanced Search results. You can also include the recommended properties to add more information to your markup, which could provide a better user experience.

You can use Google’s Structured Data Testing Tool to validate and preview your markup.


The full definition of JobPosting is available on



Set the @context to "".



Set the @type to "JobPosting". For example:

"@type": "JobPosting"

MonetaryAmount, Recommended

The actual base salary for the job, as provided by the employer (not an estimate).

For the unitText of QuantitativeValue, use one of the following case-sensitive values:

  • "HOUR"
  • "DAY"
  • "WEEK"
  • "MONTH"
  • "YEAR"

For example:

"baseSalary" : {
  "@type": "MonetaryAmount",
  "currency": "USD",
  "value": {
    "@type": "QuantitativeValue",
    "value": 40.00,
    "unitText": "HOUR"

To specify a salary range, define a minValue and a maxValue, rather than a single value. For example:

"baseSalary" : {
  "@type": "MonetaryAmount",
  "currency": "USD",
  "value": {
    "@type": "QuantitativeValue",
    "minValue": 40.00,
    "maxValue": 50.00,
    "unitText": "HOUR"

Date, Required

The original date that employer posted the job in ISO 8601 format. For example, "2017-01-24" or "2017-01-24T19:33:17+00:00".

"datePosted": "2016-02-18"

Text, Required

The full description of the job in HTML format.

The description should be a complete representation of the job, including job responsibilities, qualifications, skills, working hours, education requirements, and experience requirements. The description can't be the same as the title.

Additional guidelines:

  • You must format the description in HTML.
  • At minimum, add paragraph breaks using <br>, <p>, or \n.
  • Valid tags include <p>, <ul>, <li>, and headings <h1> through <h5>.
  • You can also use character-level formatting tags such as <strong> and <em>.

Text, Recommended

Type of employment. For example:

"employmentType" : "CONTRACTOR"

Choose one or more of the following case-sensitive values:

  • "INTERN"
  • "PER_DIEM"
  • "OTHER"

You can include more than one employmentType property. For example:

"employmentType" : ["FULL_TIME", "CONTRACTOR"]

Organization, Required

The organization offering the job position. This should be the name of the company (for example, “Starbucks, Inc”), and not the specific location that is hiring (for example, “Starbucks on Main Street”). For example:

"hiringOrganization" : {
    "@type" : "Organization",
    "name" : "MagsRUs Wheel Company",
    "sameAs" : ""

Logos on third-party job sites

If you have a third-party job site, you can provide a different logo for a given organization than the image shown in the organization's Knowledge Graph card. To request a different logo for a hiring organization, add the logo property to the hiringOrganizaion array. Make sure that you follow the logo image guidelines and Company logo guidelines. For example:

"hiringOrganization" : {
    "@type" : "Organization",
    "name" : "MagsRUs Wheel Company",
    "sameAs" : ""
    "logo" : ""

PropertyValue, Recommended

The hiring organization's unique identifier for the job.

For example:

"identifier": {
    "@type": "PropertyValue",
    "name": "MagsRUs Wheel Company",
    "value": "1234567"

Place, Required

The geographic location(s) where the employee will primarily work, not the location where the job was posted. Include as many fields as possible. The more properties you provide, the higher quality the job posting is to our users. For example:

"jobLocation" : {
  "@type": "Place",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "555 Clancy St",
    "addressLocality": "Detroit",
    "addressRegion": "MI",
    "postalCode": "48201",
    "addressCountry": "US"

If the job has multiple locations, add multiple jobLocation properties in an array. Google will choose the best location to display based on the job seeker's query.

For jobs in which the employee works remotely 100% of the time and therefore works from home, add the additionalProperty field with value TELECOMMUTE. For example:

"jobLocation" : {
  "@type": "Place",
  "address" : {
    "@type" : "PostalAddress" ,
    "streetAddress" : "555 Clancy St" ,
    "addressLocality" : "Detroit" ,
    "addressRegion" : "MI" ,
    "postalCode" : "48201" ,
    "addressCountry" : "US"
  "additionalProperty" : {
      "@type" : "PropertyValue",
      "value" : "TELECOMMUTE"

Text, Required

The title of the job (not the title of the posting). For example, "Software Engineer" or "Barista". For example:

"title" : "Software Engineer"

Best practices:

  • This field should be the title of the job only.
  • Don't include job codes, addresses, dates, salaries, or company names in the title field.

    Not recommended: Apply now for IT job -FRENCH speaker in Bucharest

    Recommended: Market Specialist, French speaker

  • Provide concise, readable titles.
  • Don't overuse special characters such as "!" and "*". Abusing special characters might cause your markup to be considered as Spammy Structured Markup. Numbers and characters such as "/" and "-" are acceptable.

    Not recommended: *** WAREHOUSE HIRING NOW!! ON A BUS ROUTE!! ***

    Recommended: Shipping and Receiving Warehouse Associate

  • Don't use name instead of title. The properties title and name aren't interchangeable.
  • If you're a third party job site, don't attempt to modify the job title to follow the guidelines above, as it can make the title unreadable. Instead, provide the title as you received it from the employer.

DateTime, Required

The date when the job posting will expire in ISO 8601 format. For example, "2017-02-24" or "2017-02-24T19:33:17+00:00". For example:

"validThrough" : "2017-03-18T00:00"

If a job posting never expires, or you do not know when the job will expire, do not include this property. If the job is filled before the expiration date occurs, remove the job posting.

Content guidelines

You must follow the general structured data quality guidelines. In addition, the following editorial and content guidelines apply to job posting structured data.

A valid job posting allows a job seeker to apply for an available role at a company or agency directly online.

Valid job posting examples:

  • Floor manager at a particular department store. Company is valid, and it's a named role.
  • Checkout associate for a particular grocery chain. Company is valid, and it’s a general role.
  • Clerical job for a placement agency. Although the final company is unspecified, the agency is the hiring party and is described.
  • Recruiter ad with an apply flow where the company is unspecified. This is acceptable because the role is well-defined and the company does exist, even if it is not revealed. In this case, the hiringOrganization markup must be blank (see Misrepresentation of self, product, service, job or company).
  • A restaurant hiring kitchen staff in a single posting. Though the job titles may include positions such as line cooks, dish washers, waiters, the overall role is the same and they’re subject to the same hiring process.
  • A barista posting that is always hiring. Blanket postings for “always hiring” jobs are acceptable.

Invalid job posting examples:

  • Career fair invitations.
  • Recruiter advertisements without a way to apply.
  • Resume drops that collect candidate data, but aren’t currently hiring.
  • Advertisements for your business disguised as job listings, such as broad career pages or other offers for services.
  • Postings that require payment to interact with them because job seekers can’t apply directly online.
  • Postings where the structured data is inconsistent with the visible content of the page.
  • Adding job posting structured data to pages that aren't job postings.
  • Providing false structured data around the company or location that make the job appear close to job seekers.
  • Providing false links that ask job seekers to apply that are substantially different from what job seekers would see browsing your website.

If Google receives a complaint that content in a job listing may violate the law (for example, if a trademark or copyright owner reports a job listing that is using their content without permission), we will handle it according to our removal policies.

Misrepresentation of self, product, service, job, or company

Job postings must fairly represent the hiring organization and job to be performed by the applicant.

Here are some examples of misrepresentation:

  • Jobs or content that represent the company in a way that is not accurate, realistic, or truthful.
  • Jobs listings for fake or non-existent jobs. This includes jobs misrepresenting themselves for the purposes of defrauding applicants.
  • The title of a job listing and the description of a listing must be related, and should not attempt to trick applicants into viewing or applying for a job.

Оставить отзыв о...

Текущей странице