How to Get Your Jobs on Google Jobs for Free: JobPosting Schema Explained

Image

Amaan Farhan

10 min read

Cover: Get your jobs on Google Jobs, free. A Google search for sales jobs in Lahore showing job listings, next to a JobPosting schema snippet with a PK location and PKR salary

Last checked: 4 November 2026


Google Jobs is free, but there is no form where you post a job to Google. Google reads a block of code called JobPosting structured data from a job's own web page. Pages with valid code become eligible for the job listings box in Google Search. So you either put that code on your careers page yourself, or post on a job board or hiring tool that already does it for you.


Where most employers get stuck is after the code is in place: the job is eligible, but Google still doesn't show it. One employer on Google's own help forum said their markup passed every test and their sitemap was processed. Yet the jobs still hadn't appeared after two weeks (Google Search Central Community). Closer to home, a Pakistani employer on Reddit was tired of posting the same role on Rozee and Mustakbil one by one and asked where everyone else posts (r/pakistan).


This guide covers both. You'll see what Google needs, a template you can copy with PKR and Pakistani city fields, how to check your work, and the reasons a correct job still doesn't show.


Does Google Jobs work in Pakistan?


Yes. Google lists Pakistan among the countries where its job search experience is available (Google Search Central, job posting docs, updated 8 September 2026).


We also checked what Pakistani job sites send to Google. On 4 November 2026 we opened one live job page each on Rozee.pk, Mustakbil and Taraki and read the code.


All three carried JobPosting markup with the country set to Pakistan ("PK"). The Mustakbil and Taraki pages also gave the salary in PKR. That tells you two things:


  • If you already post on these sites, your job is probably being offered to Google already. You don't need to do anything extra for that copy.

  • If you want the job to show from your own website, with your name and your apply page, you have to add the markup there yourself.


Being eligible is not the same as being shown. Google decides what appears, and it says so in its documentation.


Honestly, I've never applied for a job through Google myself, probably because I already use dedicated job boards. But not every candidate does. People who know less about job boards, or aren't very comfortable online, are more likely to just type the job they want into Google. If your job is on Google Jobs, it can reach them too.


Three ways to get a job onto Google Jobs


Google's own page for employers gives two routes: mark up the jobs on your own website, or use a third party that already works with Google (Google Jobs for employers). In practice, Pakistani employers have three options.


Route

What you do

Cost

Good for

Watch out for

Job board (Rozee, Mustakbil, others)

Post the job as usual

The board's own price

Teams with no website or no developer

Candidates land on the board, not on your site

Your own careers page

Add JobPosting code to each job page

Free, plus your developer's time

Companies with a proper website

You must remove or expire every filled job

A hiring tool that publishes job pages

Post once in the tool

The tool's subscription

Teams hiring every month

Check the tool's job pages actually carry the markup


If your website runs on WordPress, a plugin can do the coding. WP Job Manager, for example, adds JobPosting data to every single job page automatically. It does not submit anything to Google; Google still has to find the page on its own (WP Job Manager docs).


What JobPosting schema needs


Google requires five fields. If one is missing, the page is not eligible (Google Search Central).


Field

Required?

What to put

Pakistan note

title

Yes

The job title only, such as "Customer Support Officer"

No "URGENT", city or salary in the title

description

Yes

The full job description in HTML: duties, skills, hours, education, experience

Paste the real JD, not a two-line summary

datePosted

Yes

The date you first posted it

Don't reset it every week to look fresh

hiringOrganization

Yes

Your company's legal or trading name

Use "confidential" if an agency hides the client

jobLocation

Yes (unless 100% remote with applicantLocationRequirements)

Street, city, region and country

addressCountry must be "PK"; region is Punjab, Sindh, KP, Balochistan, ICT, etc.

validThrough

Required if the job has a closing date

The last day to apply

Match the deadline in your ad

baseSalary

Recommended

A figure or range, with currency and period

"currency": "PKR", "unitText": "MONTH"

employmentType

Recommended

FULL_TIME, PART_TIME, CONTRACTOR, INTERN, etc.

Use INTERN for internships

jobLocationType + applicantLocationRequirements

Only for 100% remote jobs

TELECOMMUTE, plus the country applicants must live in

"applicantLocationRequirements": {"@type": "Country", "name": "Pakistan"}. Not for hybrid or "WFH on Fridays"


Three rules from Google catch people out:


  1. One job, one page. The code goes on the page for a single job. A careers page that lists ten openings must not carry it.

  2. The code must match the page. If the salary is in the code, it must be visible on the page too. Google treats a mismatch as a policy problem.

  3. No login wall. If candidates must sign in to read the job, Google won't show it.


A JobPosting template for a Pakistani job


This is an example for a made-up Customer Support Officer role in Multan. Replace the example values, and anything in square brackets, with your own details. Delete any line you can't fill honestly. Paste it into that one job's page.


The code doesn't have to go in the <head>. Google reads JSON-LD anywhere on the page. That helps if you use Framer, Wix or WordPress and can't edit the head.


<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "JobPosting",
"title": "Customer Support Officer",
"description": "<p>[Full job description: what the person will do, required skills, working hours and days, education, years of experience, and how to apply.]</p>",
"datePosted": "2026-11-04",
"validThrough": "2026-11-30T23:59:00+05:00",
"employmentType": "FULL_TIME",
"hiringOrganization": {
"@type": "Organization",
"name": "[Your company name]",
"sameAs": "[https://www.yourcompany.pk]",
"logo": "[https://www.yourcompany.pk/logo.png]"
},
"jobLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"streetAddress": "[Office address]",
"addressLocality": "Multan",
"addressRegion": "Punjab",
"postalCode": "[Postal code]",
"addressCountry": "PK"
}
},
"baseSalary": {
"@type": "MonetaryAmount",
"currency": "PKR",
"value": {
"@type": "QuantitativeValue",
"minValue": 60000,
"maxValue": 90000,
"unitText": "MONTH"
}
}
}
</script>


A few Pakistan-specific choices in there:


  • Salary in PKR per month. That is how Pakistani candidates read pay. Only add it if the same range is printed on the page.

  • City and province as separate fields. Google wants the parts of the address, not one line of text. "Multan" goes in the city field and "Punjab" in the region field.

  • A real closing date. If your ad has a "last date to apply", put that same date in validThrough, and the job drops off Google after it.

  • Pakistan time on the closing date. Add +05:00 to the end of validThrough, otherwise Google may read the time as UTC and the job can expire five hours early.

  • A logo that fits. If you add a logo, Google says its width-to-height ratio must be between 0.75 and 2.5 (Google Search Central).


For comparison, here is the markup Taraki published for a real Field Sales Representative job in Lahore, posted on 29 October 2026. We removed the description and the employer's name.


JobPosting markup on a live Taraki job page for a Lahore sales role: PK address, PKR monthly salary range and a closing date 30 days after posting

Markup from a live Taraki job page, read on 4 November 2026. Employer name and description removed.


How to test it, and how long it takes


Use these checks in this order. All are free.


  1. Rich Results Test. Paste the live job URL into Google's Rich Results Test. You want "Job posting" with no errors. A warning, such as a missing salary, is fine.

  2. URL Inspection in Search Console. This shows whether Google can crawl the page and isn't blocked by robots.txt, a noindex tag or a login (URL Inspection help).

  3. The Job postings report. After Google indexes the pages, Search Console lists valid and invalid job items. Check it a week after you start, then monthly.


On timing, Google only says it "may take several days" after you publish for the page to be crawled.


To speed that up, Google recommends its Indexing API for job pages instead of relying on a sitemap (Google Search Central). The Indexing API only works for job posting and livestream pages. It needs a Google Cloud service account and a verified Search Console property, so it is a developer task (Indexing API quickstart). If you post only a few jobs a month, you can skip it and rely on your sitemap. Google may just take longer to find each job.


To see Google Jobs applicants in GA4, look for Google's own tracking tags. Google's docs list utm_source=google_jobs_apply, utm_medium=organic and utm_campaign=google_jobs_apply for visits from the job page on Google to your site (Google Search Central).


Why your job isn't showing on Google Jobs


Work through this list before you change anything.


  • The code is on the listing page. Google wants it on the single-job page only. A list page with job markup can get a policy warning.

  • The job needs a login to read. Make the description public.

  • The page and the code disagree. Salary or title in the code but not on the page is a common cause.

  • The title is stuffed. "URGENT HIRING!!! Sales Staff Lahore 50K" breaks Google's title rules. Write "Sales Officer".

  • The job is old. Expired jobs must have a past validThrough, return a 404, or lose their markup. Google can take manual action if you leave them up.

  • Candidates are asked to pay. Google doesn't allow job posts that require payment from applicants, so an ad that asks for an application fee or a bank draft won't qualify.

  • It's Google, not you. From late August 2026, SEOs and job boards reported that Google Jobs was barely showing new listings. Older ones stayed visible (Search Engine Roundtable, 4 Sep 2026; Google Search Central Community, 11 Sep 2026). We found no official Google statement on whether it is fully fixed as of 4 November 2026. If competitors' new jobs are also missing, wait and keep your markup as it is.


Where Taraki fits


Taraki publishes jobs as public pages on jobs.taraki.co. The live Taraki job pages we checked on 4 November 2026 carried JobPosting markup with a Pakistani address and a closing date, and the Lahore one above also had its PKR salary range.


That is the Google Jobs part, and you don't need a developer for it. The same post also goes to your company's LinkedIn page and to Indeed, and every applicant from every source lands in one applicant tracking pipeline with an AI score. See how job distribution works. Plans start at PKR 10,000 a month for 3 job posts (Silver), or PKR 25,000 a month for unlimited posts (Gold). See pricing for details.


What Taraki can't do: it can't make Google show a job. No tool can. If Google is slow to add new jobs, as it was from late August into September 2026, that affects Taraki's pages like everyone else's. And if you post only once or twice a year and already have a WordPress site, the WordPress plugin route above may be all you need.


Frequently asked questions


Is Google Jobs free for employers?

Yes. Google charges nothing to show a job. You pay only for whatever you use to publish the job page, such as a job board, a hiring tool or a developer's time.


Do I need my own website to appear on Google Jobs?

No. If you post on a job site whose pages carry JobPosting markup, that page can appear. You only need your own site if you want the listing to point to your own apply page.


Will Google show my salary in PKR?

It can, if you add baseSalary with "currency": "PKR" and the same figure is shown on the page. If you'd rather not publish pay, leave the field out; it is recommended, not required.


How long does a job stay on Google Jobs?

Until the validThrough date passes, the page is removed, or the markup is taken off. If you leave out validThrough, it stays until you remove it, so take filled jobs down quickly.


Can I mark a hybrid job as remote?

No. Google says TELECOMMUTE is only for jobs that are 100% remote. A 100% remote job uses TELECOMMUTE plus applicantLocationRequirements, such as Pakistan. A hybrid role in Islamabad should use the office address.


Further reading


For where to post, see our comparison of Rozee, Mustakbil, LinkedIn and Indeed. If your free LinkedIn posts have gone quiet, read how LinkedIn's free job post limit works. And if applicants are piling up in a spreadsheet, here are 7 signs it is time for an ATS. For a wider look at tools, see the best recruitment software in Pakistan.


Want your next job on Google Jobs, LinkedIn and Indeed from one post? See how Taraki's job distribution works.


Amaan Farhan, Marketing Associate at Taraki

Amaan Farhan is a Marketing Associate at Taraki, where he works on marketing and growth with an AI-native approach. He writes about how Pakistani teams can hire with less admin and better tools. LinkedIn


Read More Blogs

Bg Line

Your next hire is on Taraki

Join growing teams across Pakistan who've made their hiring faster with Taraki.

Bg Line

Your next hire is on Taraki

Join growing teams across Pakistan who've made their hiring faster with Taraki.

Bg Line

Your next hire is on Taraki

Join growing teams across Pakistan who've made their hiring faster with Taraki.

Image