In this article
- What the client is actually paying for
- Step 1: crawl the site
- Step 2: check what Google has actually indexed
- Step 3: measure Core Web Vitals on a Pakistani mobile connection
- Step 4: on-page basics, page by page
- Step 5: internal links
- Step 6: hreflang for Urdu and English sites
- Step 7: hosting and CDN realities
- Which tools you actually need, and what they cost
- How to present the audit so you get the next contract
- Frequently asked questions
If you sell SEO on Fiverr, Upwork or to a shop owner in Gulberg, the first thing most clients ask for is an “audit”. It is the cheapest thing to sell and the easiest thing to deliver badly. A 40-page PDF exported from a scanner tells the client nothing about their business and gets you no second contract.
This is the method we would use if we were doing it ourselves for a Pakistani client: seven checks, in order, each with a tool, a pass/fail line and a sentence you can put in the report. It takes a working day for a site under a thousand pages. Most of it runs on tools you already have; where a paid tool genuinely helps, we say which plan it sits in and when buying it makes no sense.
What the client is actually paying for
A client in Karachi who runs a furniture showroom does not want to know their site has 312 pages with missing meta descriptions. They want to know why the competitor on Tariq Road ranks above them for “sofa set price in Karachi” and what it costs to fix.
So an audit has three parts, and the crawl is only the first. The findings: what is technically wrong, with the evidence attached. The priorities: which five things matter, in what order, and why the other forty can wait. And a plan with a price: what you would do next month and what you would charge for it.
Everything below feeds the first part. The second and third are where the money is, and we come back to them at the end.
Step 1: crawl the site
A crawler visits every page the way Googlebot would and lists what it found: status codes, redirects, titles, headings, canonicals, image sizes, page depth. Do this first, because every later step is easier when you have a spreadsheet of every URL.
Screaming Frog SEO Spider is the standard desktop crawler. Its pricing page (screamingfrog.co.uk/seo-spider/pricing/, checked 21 Sep 2026) lists two versions:
| No licence | Licensed | |
|---|---|---|
| Crawl limit | 500 URLs | No cap (the vendor’s asterisk: bounded by your machine’s memory) |
| Save and reopen crawls | No | Yes |
| JavaScript rendering | No | Yes |
| Scheduling | No | Yes |
| Search Console, Analytics and PageSpeed Insights integration | No | Yes |
| Custom extraction and custom search | No | Yes |
| Crawl comparison (before and after) | No | Yes |
| Price | Nothing | £199 per licence per year on the vendor’s page, checked 21 Sep 2026 (it showed €245 when served in euros) |
For a small business site in Pakistan, 500 URLs is often enough. A showroom, a clinic, a school or a law office rarely has more. The moment you take on a Daraz seller with 3,000 product pages, a property portal or a news site, you hit the cap and the crawl stops silently at 500, which means your audit is wrong and you may not notice.
The two features you will miss before the cap are saving the crawl (you cannot reopen last month’s crawl to compare) and JavaScript rendering. A lot of Pakistani business sites are built on WordPress and crawl fine without it, but anything on a React or Vue front end, or a Shopify theme heavy with apps, will show you empty pages until rendering is on.
Through us, Screaming Frog is ₨2,800/month on its own, and it is only in the Ultimate plan, not Advanced. Because it is a desktop program rather than a website login, read the tool page for how access is delivered before you buy. If you audit one small site a month, the no-licence version is fine and you should not pay us or the vendor.
What to pull from the crawl, in this order:
- Every non-200 status code. 404s from internal links, 301 chains longer than one hop, and 5xx errors (common on cheap shared hosting at peak hours).
- Duplicate titles and titles under 30 characters. “Home” and “Products” as page titles are the norm on sites built by a cousin in 2019.
- Pages more than four clicks from the home page. The crawler shows crawl depth; anything deep is invisible to Google in practice.
- Canonical tags pointing somewhere odd, especially http to https and www to non-www mismatches. Pakistani hosts often leave both versions live.
- Images over 300 KB. We come back to these in the speed step.
Step 2: check what Google has actually indexed
The crawl tells you what exists. Search Console tells you what Google chose to keep, and the gap between the two is usually the most valuable finding in the audit.
Ask the client for owner access to their Search Console property. If they do not have one, set it up in the first hour; verification through the DNS record or the HTML tag takes minutes, and you will want the history to start accumulating even if the audit is a one-off.
Then, in the Pages report:
- Indexed count against crawl count. If the crawl found 800 pages and Google indexed 140, something is blocking or discouraging the rest.
- “Crawled, currently not indexed”. Google saw the page and decided it was not worth keeping. On Pakistani e-commerce sites this is nearly always thin product pages with the supplier’s one-line description and nothing else.
- “Discovered, currently not indexed”. Google knows the URL and has not bothered. Usually a crawl budget or hosting speed signal on larger sites.
- “Duplicate without user-selected canonical”. Filter and sort parameters,
?add-to-cart=URLs, and the http/https pair from step 1.
Run URL Inspection on the five pages the client cares most about (home, top category, top product, contact, the page they think should rank). “URL is not on Google” on a money page goes on page one of the report.
Also check the sitemap the client submitted. A surprising number of sites submit a sitemap generated in 2022 that lists pages deleted since, and never a single new one.
If you want a second opinion on indexing without waiting for Search Console to fill up, Semrush’s Site Audit crawls the site from its own servers and cross-checks against what it finds in search. It is ₨1,400/month through us and is in every plan we sell, including Advanced.
Step 3: measure Core Web Vitals on a Pakistani mobile connection
This is the step where an audit done from a Lahore office on fibre differs from one done from London, and where you can tell the client something a scanner cannot.
Google’s thresholds (published on web.dev) are: Largest Contentful Paint under 2.5 seconds, Interaction to Next Paint under 200 milliseconds, and Cumulative Layout Shift under 0.1, measured at the 75th percentile of real visits. The “real visits” part matters. Your client’s visitors are on Jazz, Zong, Telenor and Ufone, often on 4G that behaves like 3G in Saddar at 6 pm, on phones with 3 or 4 GB of RAM.
Two sources, and you need both:
- Field data. PageSpeed Insights shows the Chrome User Experience Report for the URL and the origin if there is enough traffic. This is the number Google actually uses. A small Pakistani business site frequently has no field data at all, which is itself a finding: not enough Chrome visitors to measure.
- Lab data. Lighthouse, run from PageSpeed Insights or from Chrome DevTools with throttling set to “Slow 4G”. Do not run it unthrottled on your office connection and report the green score. That number describes you, not the customer.
The usual causes on local sites, in order of how often we see them:
- A hero slider with four 2 MB JPEGs straight from the photographer.
- A WordPress theme loading Elementor, three slider plugins and two fonts from Google Fonts before rendering any text.
- A WhatsApp chat widget, Facebook Pixel, Google Tag Manager and a Tawk.to bubble all loading in the head.
- Shared hosting with a time to first byte over a second, which no front-end fix can rescue.
Write the LCP number for the home page and the top landing page into the report, on Slow 4G, with the date. Re-measure after the fixes and you have a before-and-after that the client can see for themselves on their own phone.
Step 4: on-page basics, page by page
You have the crawl export, so this is mostly sorting a spreadsheet. Check, for every page that is supposed to rank:
- Title tag: unique, under about 60 characters, with the query and the city where the business is local. “Dental clinic in DHA Lahore | Dr Ahmed” beats “Home”.
- Meta description: present and written as a sentence. Google rewrites most of them, but a missing one is a signal of a neglected site.
- One H1 that matches the title’s intent. Many local themes wrap the logo in an H1 on every page.
- The language of the query. A lot of Pakistani search is Roman Urdu typed into Google: “sasta laptop lahore”, “best biryani near me karachi”, “car rent islamabad rates”. Look at the Search Console Performance report, filter queries by the pages that already get impressions, and you will see the actual spelling people use. Write for that, not for the English a Karachi agency would use in a pitch deck.
- Thin pages. Anything under 150 words that is meant to rank. Product pages with the manufacturer’s spec sheet and nothing else are the classic case.
For a quick score you can show a non-technical client, Woorank scans a domain and returns a graded report with plain-English explanations for each item. It is not a substitute for the crawl, and it repeats some of what Lighthouse tells you, but the export is readable by a shop owner without you in the room. It is ₨1,400/month through us and is in the Advanced plan.
Step 5: internal links
Internal links are the cheapest ranking lever on a small site and nearly always neglected, because the site was built as a set of pages and never touched again.
From the crawl export:
- Sort by inlinks. Money pages with one or two internal links (usually just the nav) are under-linked. Blog posts, if there are any, rarely link to the product or service page they are about.
- Look for orphans: pages in the sitemap or in Search Console that the crawl never reached from the home page. Old landing pages from a Google Ads campaign are the typical case.
- Check anchor text. “Click here” and “read more” everywhere tells Google nothing. A link from the blog post about “kitchen cabinet prices in Lahore” to the kitchen category should say so.
- Find redirect chains inside the site. Internal links that go through a 301 (or two) are pure waste; update the link to the final URL.
This step produces the easiest quick wins in the whole audit. Ten internal links added to the right pages in an afternoon can move a page from position 15 to position 8 on a low-competition local query, and it costs the client nothing but your time.
Step 6: hreflang for Urdu and English sites
Bilingual sites are common in Pakistan and almost always set up wrong. The patterns we see: an Urdu version bolted on with a translation plugin, an /ur/ folder that is a copy of the English site with only the menu translated, or two entirely separate domains with no link between them.
What to check:
- Does the Urdu version exist as separate URLs? A JavaScript toggle that swaps text in place without changing the URL gives Google one page, in one language, and the Urdu content is invisible.
langanddirattributes. Urdu pages needlang="ur"anddir="rtl"on thehtmlelement. Half the Urdu sites we have crawled havelang="en"on every page because the theme hard-codes it.- hreflang pairs. Every English page should reference its Urdu twin and vice versa, with
ur-PKanden-PK(or plainuranden), plus anx-default. A reference in one direction only is treated as none. Screaming Frog’s hreflang audit is in the no-licence version and lists missing return links in one report. - Do not put both languages on one page. English at the top and Urdu below is a common shortcut and it dilutes both.
- Fonts. Urdu in Nastaliq needs a web font (Noto Nastaliq Urdu or Jameel Noori Nastaleeq are the usual choices), and those files are large. That interacts with step 3: a 1.5 MB font on Slow 4G pushes LCP past the threshold on every Urdu page. Subsetting or
font-display: swapis part of the fix.
If the client has only an English site and serves Urdu-speaking customers, the finding is not “add hreflang”. It is “decide whether an Urdu version is worth building”, and that is a separate proposal you can price.
Step 7: hosting and CDN realities
You cannot fix hosting in an audit, but you must diagnose it, because it caps everything else.
- Where is the server? Run a traceroute or check the IP’s location. Many Pakistani sites sit on shared hosting in the US or Germany because that is what the reseller sold. Every request crosses the submarine cables, and on a congested evening that adds hundreds of milliseconds before the first byte.
- Time to first byte. Measure it from the crawl (Screaming Frog records response time per URL) and from PageSpeed Insights. Over 800 ms on the home page is a hosting problem, not a theme problem.
- Is there a CDN? Check the response headers for
cf-ray,x-cacheor similar. Cloudflare’s no-cost tier is the pragmatic answer for most local sites: it caches static files close to the visitor and hides a slow origin partly. Check Cloudflare’s network map for its current points of presence in Pakistan rather than assuming. - HTTPS. Still not universal on local business sites. A
Not securelabel in Chrome on a page that asks for a phone number is a conversion problem as much as a ranking one. - Uptime. Ask the client if the site “sometimes doesn’t open”. If the answer is yes, add a monitoring check for a week before you write the report. A site that is down for two hours a day has a bigger problem than its meta descriptions.
Write the hosting findings as a separate section with a recommendation and a rough monthly cost in rupees from the host’s own page. Clients understand “your hosting costs you customers” better than any Lighthouse metric.
Which tools you actually need, and what they cost
For a small site, most of this audit runs on Search Console, PageSpeed Insights, Chrome DevTools and the 500-URL version of Screaming Frog, all of which cost nothing. Buy tools when you outgrow them, not before.
The four tools we would reach for, and where each sits in our catalogue:
| Tool | What it does in the audit | Through us | Plans |
|---|---|---|---|
| Screaming Frog | Crawl over 500 URLs, save crawls, render JavaScript | ₨2,800/month | Ultimate only |
| Semrush | Cloud site audit, keyword data, second opinion on indexing | ₨1,400/month | Essential, Boost, Advanced, Ultimate |
| SE Ranking | Scheduled audits, rank tracking, white-label reports for the client | ₨1,400/month | Ultimate only |
| Woorank | Quick graded report a client can read | ₨1,400/month | Boost, Advanced, Ultimate |
Three things to notice before you buy anything.
Screaming Frog and SE Ranking are only in the Ultimate plan. The Advanced plan is ₨8,300/month for 25 tools, and it includes Semrush and Woorank, plus Ahrefs, Moz Pro, Canva and ChatGPT, but not the two audit tools this article leans on. If you came here for Screaming Frog specifically, Advanced is the wrong plan.
The four tools bought one by one cost less than either plan. Add up the four single prices above and compare with ₨8,300/month for Advanced or ₨13,600/month for Ultimate. If audits are all you do, buy the singles. The Ultimate plan at 91 tools only makes sense if you also use the design, AI and video tools in it, which a freelancer selling content and social alongside SEO may well do (the content stack post does that math). SE Ranking on its own is worth the ₨1,400/month for the client reporting alone, which is covered in that review.
Shared access has limits. You log in through the dashboard in a browser; there are no API keys, so anything that needs an API (Screaming Frog’s PageSpeed Insights integration, for example, needs your own Google API key, which is separate) works differently from a personal licence. Accounts get reset from time to time, fair-use limits apply, and when many people crawl at once through a cloud tool it slows for everyone. Plan your heavy crawls for Pakistani daytime, when it is night in the markets that share the account. For a one-off audit the trade is fine. For an agency running scheduled audits on thirty client sites, buy the vendor’s licence.
On payment: cards work today for buyers in Pakistan, and USDT works everywhere. Easypaisa and JazzCash are coming soon, so if you need to pay from a wallet, wait for that rather than assuming it is live. The pricing page shows every plan in rupees when you switch the market to PK, and the Pakistan guide covers the wider catalogue.
How to present the audit so you get the next contract
The report is what the client remembers. A few rules that have worked for people we know doing this from Lahore and Karachi:
Lead with three findings, not thirty. Page one is: the biggest problem, what it costs the client (in customers, in rankings, in rupees where you can estimate it), and what fixing it involves. The full spreadsheet goes in an appendix nobody reads, which is fine; it proves you did the work.
Show the client’s own phone. Open their site on Slow 4G next to the competitor’s in the meeting, or record a 20-second screen capture. Numbers are abstract; a spinner for six seconds is not.
Price the fix. Every audit ends with a one-page proposal: “Month one: hosting move and image compression, PKR X. Month two: on-page rewrite of 12 pages, PKR Y.” The audit was the cheap sale; the proposal is the real one. Quote in rupees for local clients and in dollars on Fiverr and Upwork, where the platform holds the money anyway.
Deliver a PDF and a shared sheet. Fiverr clients expect a file. Local clients want something they can forward to their web developer, who is often a relative. The sheet with the URL list and the pass/fail column is what the developer will actually use.
Set up the before and after. Save the crawl (the paid Screaming Frog, or SE Ranking’s scheduled audit, both Ultimate-only, or just keep the export). Re-run in 60 days and send the comparison unprompted. That email is the easiest upsell in this business.
Do not oversell the result. If the site is on bad hosting with no content, say the audit will not change rankings until those two are fixed, and price those. Clients in this market have been burned by “guaranteed page one” agencies; the freelancer who says “this will take three months and here is why” is the one who gets referred.
Repeat the same seven steps on every client and the audit becomes a template. The second one takes half the time, and the fifth one takes a morning.
Frequently asked questions
Is the 500-URL version of Screaming Frog enough for a Pakistani client site?
For a clinic, showroom, school, restaurant or services business, usually yes; those sites rarely pass 200 pages. For an online store, a property portal, a news site or anything with filters and pagination, no, and the crawl will stop at 500 without warning. Check the page count in Search Console before you decide.
Which plan has Screaming Frog and SE Ranking?
Only the Ultimate plan. Advanced does not include either. If you want only those two, buying them as single tools at ₨2,800/month and ₨1,400/month is cheaper than either plan, and you can see all of it on the pricing page.
Do I need Semrush or Ahrefs to do a technical audit?
No. A technical audit runs on a crawler, Search Console and PageSpeed Insights. Semrush earns its place when you move from “what is broken” to “what should this site rank for”, which is the proposal stage. It is in every plan we sell, including Essential, so it is the cheapest way to add keyword data when you get there.
How do I measure Core Web Vitals the way Pakistani users experience them?
Use PageSpeed Insights for field data from real Chrome users first; if the site is too small to have any, run Lighthouse in Chrome DevTools with network throttling set to Slow 4G and CPU throttling at 4x, and report that. Never report an unthrottled run from your office connection.
How should hreflang be set up for an Urdu and English site?
Separate URLs for each language, lang="ur" and dir="rtl" on the Urdu pages, and hreflang tags on every page pointing to both versions plus an x-default. Both directions must be present or Google ignores the pair. Screaming Frog’s hreflang report, in the no-licence version, lists the missing return links.
Can I pay for BundledSEO with Easypaisa or JazzCash?
Not yet. Cards and USDT work for buyers in Pakistan today; Easypaisa and JazzCash are coming soon. Do not plan a purchase around a wallet rail until it shows as live at checkout.
What should an SEO audit cost in Pakistan?
We do not set freelancer rates, and the range is wide: a template report sells for a few thousand rupees on local groups, and a proper seven-step audit with a priced proposal sells for far more to a business that has revenue at stake. Price the audit low if it leads to a monthly retainer, and price it properly if it is the only work you will do for that client.
Does shared access work for a desktop tool like Screaming Frog?
It is delivered differently from the cloud tools, because the program runs on your own machine rather than in a browser tab. Read the tool page for how access is provided before buying, and remember that any integration needing your own Google API key (PageSpeed Insights, Search Console) is set up on your side regardless of where the licence comes from.