Measurement preflight

Search Console Link Reporting Canary

Before interpreting a missing anchor, I need to prove that the reporting system can see a known link under the study’s property setup.

By Cyrus ShepardPrepared July 2026Preflight

An SEO experiment can be perfectly coded and still fail because the measurement system never exposes the signal. This page is a canary: a small, isolated target designed to tell me whether Search Console can observe the links required by the larger selective-link-priority study.

This page is an instrument check, not a ranking target. A successful canary does not prove the main hypothesis. A failed canary prevents me from interpreting missing anchor data as evidence. The order test on this page is interpreted only after that gate passes.

What the canary receives

Two study pages point here. The homepage contains one ordinary text link. The linked-image article contains one image-only link with a distinct alt attribute. Both sources are on the same subdomain, while this directory can be verified as its own URL-prefix property in Search Console.

Google’s documentation defines external links as links originating outside the current property. That makes a path-scoped property a plausible way to observe sibling directories. At the same time, the Links report displays linking sites by root domain and samples its data. I am therefore treating same-subdomain visibility as an assumption to test, not a guaranteed feature.

What counts as a successful instrument check

  1. Googlebot fetches both source pages after the experimental links are deployed.
  2. This URL is indexed with its self-referencing canonical selected.
  3. The URL appears in the canary property’s external-link reporting.
  4. The text-link label appears in two consecutive exports, or the report otherwise exposes a stable, attributable text observation.
  5. The image link is documented exactly as Search Console represents it, including an empty value if that is what the export provides.

The fifth point matters because current Search Console help says image links are shown as “empty” in the Link Text report. Google Search Central separately says that an image’s alt attribute can be used as anchor text. Those statements are not necessarily contradictory: one describes how Google may process a link, while the other describes what a reporting interface displays.

Failure modes I am watching

ObservationLikely interpretation
Page not indexedThe test has not reached the reporting stage.
Wrong canonical selectedLinks may be grouped under another URL.
Internal link visible, external link absentThe path-property assumption may not expose sibling links as expected.
Text appears; image is emptyText testing is viable, but image alt selection is not observable in this report.
No rows despite verified crawlingSampling or property behavior makes the instrument inconclusive.

Why I will not use absence as proof

Search Console states that its Links report is not comprehensive. Pages can be omitted because of sampling, canonicalization, non-indexing, or deduplication. It also retains links Google found in the past. These properties make the report useful for controlled observations but dangerous for absolute claims.

If the expected text does not appear, I cannot conclude that Google ignored the anchor. I can conclude only that the report did not show it under the conditions and observation window. That distinction is the difference between a cautious experiment and a confident story built on missing data.

Fallbacks, in order

First, I will verify the implementation: HTTP status, canonical, robots directives, rendered HTML, and Googlebot logs. Second, I will wait for the preregistered reporting intervals rather than checking opportunistically. Third, I will inspect the broader subdomain property to determine whether the links appear only as internal links.

If the canary still fails, the primary Search Console method is not suitable for an all-on-one-subdomain replication. The editorial pages can remain published, but the study should either move controlled targets to a genuinely separate property or be reframed around a different observable outcome. I will not quietly switch methods after seeing the results.

Measurement log

DateEventEvidence
To be recordedPublic deploymentRelease checksum and archived HTML
To be recordedFirst verified Googlebot fetchServer log entry
To be recordedCanonical confirmedURL Inspection output
To be recordedFirst Links exportCSV retained with date

Source order versus visual order

Once the measurement gate is usable, this page becomes the source for a tightly scoped rendering test. The two links below point to the exact same URL. In the HTML, the first card comes first and the second card comes later. CSS reverses their visible position, so the second source link is displayed above the first one on both desktop and mobile.

Intentional accessibility exception: keyboard focus follows DOM order, not the visual order shown here. I would not recommend this pattern for a production interface. It is confined to one labeled test block because that mismatch is the variable being measured.
First in HTML · displayed second

marble ladder field note

Second in HTML · displayed first

saffron compass field note

If the first phrase in the source is reported, the result supports DOM order in this configuration. If the visually upper phrase is reported, rendered placement may matter. If both or neither appear, the result will be labeled accordingly rather than forced into a binary answer.

Why publish the canary

Publishing the instrument check makes the limitation visible before the result. It also gives other researchers a reusable pattern: validate that a report can see a known signal, then run the experiment that depends on it. The page is intentionally plain about uncertainty because that uncertainty is part of the method.

Preflight checklist before the clock starts

I will test each URL in a browser with JavaScript disabled, confirm that the response is a direct 200, and compare the delivered source with the rendered DOM. The canary’s two inbound links must be present in server HTML, use ordinary anchor elements with resolvable HTTPS URLs, and carry no nofollow, sponsored, or ugc qualification. I will also verify that no security header, authentication layer, or staging rule blocks Googlebot.

Next I will archive the sitemap, robots file, release checksum, and Search Console property list. The narrow property must match the canonical URL exactly, including protocol and trailing directory path. I will save screenshots of the property selector because a result pulled from the umbrella property would classify the links differently and invalidate the intended observation.

Finally, I will define the first export date before launch. Waiting until a row appears and then choosing that moment as the endpoint would introduce optional stopping. Fixed checkpoints make a slow or negative result less exciting, but much easier to trust.

Documentation used for the preflight: Search Console Links report and Google Search Central link best practices.