How to use ‘content patterns’ to mimic structured data and get list-based featured snippets
Content patterns leverage Google’s ability to parse and structure content without the need for Schema structured data. The result is a better understanding of page content and an increased chance of getting list-based featured snippets.

Schema structured data and the metadata attributes that preceded it (RDFa and Microformats) are all ideal methods for communicating information to Google without ambiguity. However, Google is still quite capable of parsing and comprehending page content without structured data. Even with the inclusion of structured data, unstructured written content is still the primary source of on-page data that Google uses to discern meaning and relevance.
Semantic HTML has elements like <table>, <ol>, <ul>, and <dl> that can provide structure for content. For example, the <ul> list element can present a structured order of content that Google recognizes as a list. Generally speaking, its structure remains intact if Google’s algorithm presents it as a list in a featured snippet.
Tables represent the most structured version of semantic HTML. When tables are coded well, and the cell information is clear, Google can use the cell data for featured snippets and rich results.

Google can still extrapolate free-form content into structured lists even without Schema structured data or HTML tables and lists. They can then display the content as lists in featured snippets. Google accomplishes this by crawling and detecting content patterns. This article shows you how to create them.
How to create content patterns
As previously stated, semantic HTML doesn’t just provide context; it can also provide structure. The use of headings is a good example of this. Headings provide a content hierarchy for readers and bots and compartmentalize content into blocks.
Contextually, the paragraphs that follow a sub-heading are associated with it. The sub-headings, when combined, are associated with the first heading, which is typically the article’s headline that’s within an <h1> element.
We can take this structure further by using it to create a content pattern. An excellent use case for a content pattern is a ‘Best’ listicle article. Best listicle articles typically cover several items and contain similar types of information for each item.
A content pattern can be created with a Best listicle article by structuring how each item is presented. For example, if you make each item have a sub-heading, two paragraphs, and an image, you’ll create a content pattern that Google can parse into a list.
<h1>
<p>
<h2>
<p>
<img>
<h2>
<p>
<img>
<h2>
<p>
<img>
Boats.com uses a similar content pattern for its “Best Boat Brands” article. They repeat the use of an <h2> sub-heading and a paragraph for each boat.
Then, without using structured data, Google can parse the content pattern, build a list, and create a featured snippet.

Content patterns are helpful because any editor can create them, but they have limitations. For example, a page with How-to steps can use a content pattern but won’t be eligible for Google’s How-to rich result. The only way to achieve that is to include the HowTo Schema, which can be accomplished using Yoast and Gutenberg in WordPress.
A perfectly optimized page uses content patterns, semantic HTML with tables or lists, and relevant Schema structured data. A page with all those elements has the best chance of taking full advantage of every search result visualization that Google offers.
Jon Henshaw is the founder of Coywolf and an industry veteran with almost three decades of SEO, digital marketing, and web technologies experience. Follow @jon@henshaw.social