Q* and P*: The Two Pillars of Google's Ranking Architecture
The DOJ trial revealed that Google's ranking ultimately reduces to two top-level signals — Quality (Q*) and Popularity (P*). Here's what the evidence tells us about how they work.
The two-signal revelation
The most architecturally significant revelation from the US v. Google antitrust trial was not about any single ranking system — it was about the overall structure. Google's ranking, despite involving hundreds of signals and subsystems, ultimately reduces to two fundamental top-level scores: Quality (Q*) and Popularity (P*). Every other signal feeds into one of these two pillars.
This bipartite structure explains why Google's ranking feels both incredibly complex and surprisingly stable. The complexity comes from the hundreds of subsystems — NavBoost, Panda, NSR, PageRank, TopicLayers, and dozens more — that each measure some aspect of quality or popularity. The stability comes from the aggregation: these hundreds of signals funnel into just two scores, which are then combined to produce the final ranking.
The DOJ trial testimony from Pandu Nayak established this architecture under oath. Nayak described Q* as the quality score and P* as the popularity score, with the final ranking being a function of both. This was not previously public knowledge — Google had never disclosed the two-signal architecture, despite years of SEO industry speculation about how many ranking factors existed.
What Q* measures: the quality pillar
Q* is the quality pillar. It is a summary quality score for an entire website — a 'balance' that aggregates multiple quality signals into a single number. The Google API leak reveals that Q* is composed of three main inputs: siteAuthority (a measure of the site's overall trust and authority), a lowQuality flag (indicating whether the site has been flagged for low-quality content), and the NSR value (the normalized site rank, which itself aggregates multiple quality subsystems).
The leak also reveals that siteAuthority is 'converted from quality_nsr' — meaning siteAuthority is not an independent signal but a transformation of the NSR score. This creates a recursive quality assessment: NSR feeds into Q*, which produces siteAuthority, which feeds back into Q*. This circularity is not a bug — it reflects the iterative nature of quality assessment, where a site's authority is both an input to and an output of its quality score.
Q* operates at the site level (Reach: Site), meaning it produces a single quality score for an entire domain, not individual pages. This is consistent with Panda's site-wide scope: both Q* and Panda treat quality as a property of the website, not of individual URLs. The page-level quality signals (like NavBoost's per-document click scores) feed into these site-level aggregations.
What NSR measures: the quality engine
NSR (Normalized Site Rank) is the real quality engine beneath Q*. While Q* is the summary score, NSR is the computation that produces it. NSR calculates a normalized quality and authority value for individual 'chunks' — subsections of a website — and then aggregates these chunk-level scores into a site-wide NSR value.
The chunk-based approach is architecturally significant. Rather than treating a website as a single monolithic entity, NSR evaluates quality at the sub-section level. This means a site can have high-quality sections (e.g., a well-researched news section) and low-quality sections (e.g., a thin tag page section), and NSR will reflect this granularity. The final site-wide score is a weighted average of the chunk scores, not a binary pass/fail.
NSR is fed by five upstream systems (8, 9, 10, 11, 13), each contributing a different quality dimension. This multi-source approach makes NSR more robust than any single quality signal — a weakness in one upstream system can be compensated by the others. It also explains why quality issues are often gradual rather than sudden: a problem in one upstream signal is buffered by the others.
The Q*/P* relationship
The DOJ trial revealed that Q* and P* are not independent — they interact. A site with high Q* (quality) but low P* (popularity) can still rank well for queries where quality matters more than popularity (e.g., medical queries). Conversely, a site with high P* but low Q* can rank well for queries where popularity matters more (e.g., entertainment news). The relative weighting of Q* vs P* varies by query type.
This query-dependent weighting is itself a signal. The DOJ trial testimony suggested that Google adjusts the Q*/P* balance based on the nature of the query — informational queries weight quality more heavily, while navigational or commercial queries may weight popularity more. This explains why different types of content rank differently for different query intents, even when the underlying quality and popularity scores are the same.
The two-signal architecture also explains why Google's ranking is resistant to single-vector manipulation. A link-building campaign that boosts P* without improving Q* will produce a temporary ranking improvement, but the quality deficit will cap how high the site can rank. Similarly, improving quality without building awareness (popularity) will limit the site's ability to rank for competitive queries.
The hand-crafted architecture and what it means
The DOJ trial's most underappreciated revelation was not about any specific signal — it was about how Google's signals are built. HJ Kim's testimony in Exhibit PXR0356 stated: 'Almost every signal, aside from RankBrain and DeepRank (which are LLM-based) are hand-crafted and thus able to be analyzed and adjusted by engineers.' This means the vast majority of Google's ranking signals are not black-box machine learning models — they are hand-coded functions with hand-tuned thresholds.
This has a profound implication for the SEO industry: Google's ranking system is fundamentally understandable by human engineers. The signals can be analyzed, debugged, and reverse-engineered because they were built by humans, for humans. This is why evidence-based SEO analysis works — not because Google wants it to, but because the system's architecture demands it.
The hand-crafted nature also explains why Google's signals change slowly. A hand-tuned threshold can be adjusted by an engineer, but the adjustment requires human review, testing, and deployment. Machine learning models can adapt continuously; hand-crafted signals require deliberate engineering effort. This is why Google's algorithm updates are discrete events (Panda, Penguin, Core Updates) rather than continuous drift.
Implications for SEO practitioners
The two-signal architecture provides a mental model for SEO that is both simpler and more accurate than the '200+ ranking factors' narrative. Every SEO activity ultimately feeds into either Q* (quality) or P* (popularity). Content improvements feed Q*. Link building feeds P*. User experience improvements feed Q* (via NavBoost's quality signal). Social signals feed P* (via traffic and brand awareness).
The chunk-based NSR computation means that site quality is not uniform — a site can have strong sections and weak sections, and Google knows the difference. This means improving one section (e.g., adding a high-quality guide) can improve the NSR score for that chunk, which raises the site-wide Q* average, which benefits all pages on the site.
Finally, the hand-crafted nature of the signals means that the system rewards understanding over manipulation. SEO practitioners who understand how a signal works — what it measures, what its thresholds are, how it interacts with other signals — can make informed decisions that align with the system's design intent. This is the opposite of gaming: it's working with the system rather than against it.