Library·SOP·SEO

Audit and prioritize internal-link improvements with Semrush

Find useful connections across your website and turn crawl findings into an ordered link plan with clear placements, owners and checks.

Last reviewed: · Editorial review

Clarity, structure and references reviewed in this version. This is not a test in a live account.

SOP 128 · 240 min
SOPFree

Audit and prioritize internal-link improvements with Semrush

SOP 128 · 240 min

Find useful connections across your website and turn crawl findings into an ordered link plan with clear placements, owners and checks.

Scope

This SOP covers:

This does not cover:

Requirements

01. Define the portfolio and build its inventory

An internal link starts on one page of your website and opens another. First decide which part of the website needs better paths for readers.

  1. Make an editable copy of the Internal-link Improvement Plan supplied with this guide. Use Start Here for the scope, Inventory for public pages, Crawl Rows for exported page data, Issue Groups for reported problems and Link Plan for the final work. Fictional Example teaches the choices with separate invented inputs.

  2. Agree what the review must cover and what visitors should accomplish.

    1. Ask the owner whether this review covers the whole public website or a meaningful section, such as the complete help library or all service pages. Fill Website homepage, Agreed scope and Scope exclusions in Start Here. Include the full section, rather than a convenient number of URLs.

    2. Ask which visitor task matters most and which pages support it. Enter Visitor task / business priority and Important page URLs, with a reason for each. For a garden shop, choosing a suitable kit may make the kit category and selection guides important.

    3. If the owner has not supplied a priority, enter Not provided in Visitor task / business priority and the exact question in Owner questions. Continue collecting evidence; mark later order reasons Provisional until the owner answers.

    4. Create a folder on your computer named Internal links, followed by the website name and today’s date. Enter its path in Evidence folder. Keep the original page lists and exports there.

  3. Build one list of the public pages in the agreed area.

    1. Ask the owner for the available list of published pages from the website’s content system and its public sitemap address. A sitemap is a list of URLs for search engines. Open it; if it lists other sitemaps, open each relevant child list. Save the lists in Evidence folder and record their addresses and dates in Inventory source / date. Use the available sources together because a sitemap can omit pages.

    2. Put every URL in the agreed area into Inventory → Page URL and name its Inventory source. Remove exact identical duplicates only. Keep www/non-www or other address differences visible until checked. Add known important pages missing from the lists. Record Page purpose and Business importance / reason; mark deliberate exclusions Outside scope and give the owner’s reason. Enter the unique count in Start Here → Inventory URL count.

02. Save the crawl and reconcile its coverage

A crawler follows links it can read. Its report describes the pages it reached; the inventory helps reveal what it missed.

  1. Open Semrush, then Site Audit for this website. Read the completed crawl date and saved source, scope and limit. Use a Website-source crawl of the agreed area taken after its latest important site changes. Record Campaign URL / name, Crawl date, Crawl source / scope and Page limit / remaining allowance in Start Here.

    • Warning: A sitemap or imported-URL crawl can find pages without following their homepage paths. Do not treat its depth values as the same evidence as a Website crawl.
  2. If the completed crawl is too old, covers a smaller area or uses another source, follow the linked SOP’s crawl setup and coverage sections to arrange a Website crawl for Agreed scope. Preserve existing exports first. Check current allowance before rerunning; retain any unserved area in Coverage notes if the chosen scope will not fit.

  3. Preserve the complete available page and issue data.

    1. Use the audit’s Export control to save Crawled Pages and Issues as CSV or XLSX in Evidence folder. Use absolute URLs, which include https:// and the hostname. Keep the untouched files. Enter the report’s page count and exported page-row count in Pages crawled / export rows.

    2. Open the Crawled Pages export in a spreadsheet. Copy all its URL rows and the available status, depth, incoming/outgoing internal links, Internal LinkRank and canonical values into their matching Crawl Rows columns. Add rows as needed. If a column is absent, keep it blank and explain the gap in Notes; use the live report for a later needed check.

  4. Match every Inventory → Page URL against Crawl Rows, and account for the gaps.

    1. Set Crawl coverage to Found when the exact URL is present and Missing when it is absent. For each missing page, check the agreed scope and reached page limit, then open its public URL. Write what is known and the next question in Finding / next question. Add an Investigate row to Link Plan for any unexplained gap.

    2. Record reached caps, blocked areas, hostname differences and links missing from script-heavy pages in Coverage notes. Use Coverage result = Limited while these leave inventory pages unexplained. Use Accounted for selected inventory when every row is matched or has an explained exclusion; this does not prove the lists contain every possible URL.

      • Warning: A page missing from this crawl is not a proven orphan. Even zero reported incoming links describes this crawl; a site manager may need to check other page lists and links.

Depth and link counts reveal places to examine. The actual page purpose and a useful reader next step determine whether a link belongs.

  1. From the audit overview, open the Internal Linking report and examine the portfolio.

    1. Inspect Pages Crawl Depth and the Internal Links incoming and outgoing views. Depth is the shortest number of link steps from the crawl’s start page. Incoming links lead into a page; outgoing links lead from it. Open the ranges to find important pages with weaker routes than comparable page types. Put the patterns and affected URLs in Start Here → Report signals.

    2. Inspect Internal Link Distribution and Pages passing most Internal LinkRank. LinkRank is Semrush’s estimate from the links it found, not a Google ranking score. Compare pages with similar roles: a buying category may deserve a clearer route than an old reference article. Higher-scoring source pages are candidates only when their content naturally helps readers reach the destination. Add these observations to Report signals.

  2. Account for every nonzero Internal Link Issues group.

    1. Open each nonzero issue type and its affected-item list; read its explanation. In Issue Groups, fill Issue type, Count, Count unit and Affected URLs / saved list. Save the complete available list in Evidence folder. A count of links is not a count of pages.

    2. Check all named important pages affected by each issue, plus each different source page type or shared template. For a reported link problem, open the source and follow the link. Record the actual result in Checked cases and result. Use Change for a confirmed unwanted link problem, Keep when the owner confirms it is useful/intended, or Investigate when report and page disagree.

  3. Review every available Crawl Rows record, using the report patterns, page role, status and canonical information. Set Row decision to Candidate for a useful route to inspect, Keep when existing paths suit its purpose, Investigate for missing/conflicting evidence, or Outside scope with the reason in Notes. Carry candidates and questions into Inventory and Link Plan; retain all other rows.

  4. For each candidate destination, find and check relevant sources and onward destinations.

    1. Open the candidate’s public URL and read what it provides. Compare its purpose with Business importance / reason. Confirm the destination is the intended public page rather than a redirect, missing page or unrelated duplicate. Put that result in Link Plan → Evidence / open question.

    2. If canonical or duplicate information leaves the intended destination unclear, use the linked SOP to inspect the page, then ask the owner which version should be linked. Keep Investigate and that exact question in Evidence / open question until resolved.

    3. Use the inventory, existing incoming/outgoing details in the page’s Crawled Pages view and the website’s topic search to find related pages. Read each plausible source’s relevant section. Look for an existing sentence where the candidate explains a detail or next task. For a kit page, a gift guide paragraph about beginner kits fits; a high-scoring privacy page does not. Record the checked source and section in Link Plan.

    4. Read the links already in those sections and check the candidate page’s useful onward links too. If a suitable link exists with accurate words and destination, keep it. If the destination or wording is wrong, plan a change. If a useful link is missing, plan an addition. If no source has a natural place, record that finding instead of inventing a paragraph solely for a link.

    5. In Contextual or template, use Contextual for a link within useful page content. Use Navigation / template for a shared menu, footer or repeated component. A missing main route to the kit category may need navigation work; adding a paragraph link is a different action with a different owner. Record the affected page types for shared work.

  5. Complete one Link Plan row for each distinct placement, shared action, keep decision or investigation.

    1. Enter a Plan ID, Decision, From URL / source and To URL / target. From is where the link starts; To is the page it opens. Name Section / current link and Proposed link text / change. Read proposed words alone and in their sentence: they should describe the destination naturally. In Reader benefit, name the extra detail or next task. Leave an unknown target blank and name the question under Evidence / open question.

    2. Choose Add when a relevant useful link is missing; Change when an existing link’s wording, destination or shared placement needs correction; Keep when it already helps readers or no relevant addition is justified; Investigate when access, coverage, preferred URL or purpose is unresolved. Write the supporting observation in Evidence / open question and link the Plan ID back to Inventory, Crawl Rows or Issue Groups.

04. Order the work and complete the handoff

Compare plausible actions across the entire portfolio. The completed plan tells editors what to do and how to check it; this audit ends before website changes.

  1. Number actionable work in Order and explain the comparisons.

    1. Start with a confirmed barrier or weak useful route to an important destination, where a relevant placement is available. Diagnose an unresolved barrier to an important page before dependent link edits. For similar importance, compare the important-page reach of shared work, evidence strength and effort; use a small clear edit as a tie-breaker, not a reason to ignore a major problem.

    2. Read Fictional Example. Its deep seed-kit page comes before an old article’s low score because a gift-guide placement fits the main buying task. A missing inventory page needs diagnosis, not an invented orphan fix. A shared missing shopping-menu route can come before a one-page wording edit because it affects the main visitor route across page types. Apply the same comparison to your candidates in Why before next candidate.

    3. Add rows or work in batches until the agreed inventory, every available crawl row and every nonzero internal-link issue are accounted for. Combine all batches before ordering. Keep decisions stay visible with a reason and no action number. Start order reasons with Provisional if the owner priority is still missing.

  2. Give each Add, Change and Investigate row a real owner, Due / recheck date, Next procedure / action and Check after work. For a link edit, specify the public source placement and destination click check plus a later compatible crawl if needed. For an investigation, name the exact question and evidence that resolves it. Ask the owner to resolve missing assignments in Start Here → Owner questions.

  3. For WordPress contextual additions or wording changes, attach the linked SOP to Next procedure / action. Give the editor your From URL, To URL, section, proposed words and reader benefit; the editor will implement and check the public links in that procedure.

  4. For a confirmed broken link, attach the linked SOP to that row’s Next procedure / action and carry its source, reported link and checked failure.

  5. For a redirect chain or loop, attach the linked SOP to Next procedure / action and carry the full observed path. For Navigation / template work, instead name the site manager and affected components directly in the row.

  6. Check that every Inventory and Crawl Rows record has a disposition and every nonzero Issue Groups row has checked cases and a linked plan or keep reason. Re-read the ordered Link Plan: each action needs evidence, a comparative reason, owner, date, next action and finish check. Enter Plan reviewer and Next review date in Start Here, then save the workbook for the owner’s normal review.

Audit and prioritize internal-link improvements with Semrush — 6am Library