A search term targeted for organic search ranking, with volume, difficulty, and current ranking data.
An SEO keyword is the phrase a person types into a search box, captured as a target a piece of content tries to answer. The word survives from an era when search engines counted exact strings; the practice it now names is closer to reading a stranger's intent from a few words and deciding whether you can satisfy it better than the page currently ranking.
Early search engines ranked pages largely on term frequency, so the keyword was almost literal: repeat the phrase enough and you ranked for it. That mechanism produced keyword stuffing, the late-1990s practice of cramming a term into copy, meta tags, and hidden text. Google spent the next decade dismantling it. The 2003 Florida update was its first major blow to keyword-density tactics, Panda in 2011 demoted thin content built around them, and Hummingbird in 2013 reoriented ranking around the meaning of a query rather than its exact wording.
That shift moved the keyword from a string to a signal of intent. Practitioners began classifying queries by what the searcher wants: informational ("how does attribution work"), navigational ("Google Analytics login"), commercial ("best attribution tools"), and transactional ("buy Mixpanel plan"). A page that ranks for an informational query by trying to sell something has read the intent wrong, however many times it repeats the phrase. Volume and difficulty became the other two axes: head terms carry huge volume and brutal competition, while long-tail phrases of four or more words carry less volume and far higher intent. Search Engine Land's long-tail guidance reflects the consensus that specific phrases convert better and rank more easily, which pushed strategy away from chasing a few fat head terms toward covering many precise ones.
The latest turn is the AI-overview era. Google began rolling out AI Overviews in May 2024, answering many queries directly on the results page. The keyword as a click-driving target weakened, and the work moved up a level to topic authority: pillar pages and clusters that cover an intent comprehensively enough to be the source an AI answer cites. The keyword did not disappear; it became one input into a topic a page must own.
A B2B analytics company wants traffic that converts. It stops chasing "analytics software," a head term with 60,000 monthly searches, a difficulty score in the 80s, and intent so broad it pulls students and jobJobUserJob To Be Done: what the user is trying to accomplishView reference →-seekers. It targets "how to measure activation rate," an informational long-tail phrase with 400 searches a month, low difficulty, and a searcher who is almost certainly a product or growth person with the exact problem the product solves.
The keyword drives one content pieceContent PieceContent & KnowledgeA piece of content (article, video, etc.)View reference →, a thorough guide to defining and measuring activation. That guide links up to a pillar page on product analytics and out to a dozen sibling pieces on related queries. Eight months later the cluster ranks for 200-plus long-tail phrases nobody explicitly targeted, the activation guide is cited inside an AI Overview because it answers the question completely, and trial signups from organic search rise without the company ever ranking for the head term it abandoned.
In the Unified Product Graph, an SEO keyword sits in the marketing region, connected upward by Marketing StrategytargetsSEO Keywordhierarchy to the strategy that selected it and outward by marketing_strategy_targets_seo_keywordSEO KeyworddrivesContent Piececross-domain to the content built to capture it. That second edge encodes the modern discipline directly: a keyword is meant to produce content, and a tracked keyword with no content piece attached is unmet demand sitting visible in the graph. Cluster many such keywords around shared content and the structure starts to resemble the topic authority that AI-era search rewards, which a flat list of strings never could.seo_keyword_drives_content_piece
Type-specific fields on BaseNode
keywordstringThe keyword or phrase being targeted
search_volumenumberEstimated monthly search volume
difficultynumberKeyword difficulty score (0-100)
intentstringSearch intent behind the keyword
current_ranknumberCurrent SERP ranking position
target_ranknumberDesired ranking position
idstringrequiredUnique identifier (UUID)
typeNodeTyperequiredDiscriminator for the entity type
titlestringrequiredDisplay name
descriptionstringOptional detailed description
statusstringLifecycle status
tagsstring[]Freeform tags for filtering
2 edge types connected to this entity.
marketing_strategy_targets_seo_keywordseo_keyword_drives_content_piece