{"id":25518,"date":"2026-09-05T02:44:41","date_gmt":"2026-09-04T23:44:41","guid":{"rendered":"https:\/\/alienroad.com\/google-bilgi-bankasi\/loyalty-program-memberprogram-structured-data\/"},"modified":"2026-09-05T02:44:41","modified_gmt":"2026-09-04T23:44:41","slug":"loyalty-program-memberprogram-structured-data","status":"publish","type":"ar_kb","link":"https:\/\/alienroad.com\/google-bilgi-bankasi\/loyalty-program-memberprogram-structured-data\/","title":{"rendered":"Loyalty program (MemberProgram) structured data"},"content":{"rendered":"<p><img decoding=\"async\" class=\"attempt-right\" width=\"600\" src=\"https:\/\/alienroad.com\/wp-content\/uploads\/kb-gorsel\/g-763de8d6617b.png\" loading=\"lazy\" alt=\"shopping knowledge panel with loyalty price in search results\"><\/p>\n<p>\n  Many merchants have loyalty programs that offer members special benefits, such as special prices and<br \/>\n  loyalty points. When you add <code>MemberProgram<\/code> structured data to your site, Google Search can<br \/>\n  use this information to display loyalty benefits with your products and knowledge panels in Search results.\n<\/p>\n<p>\n  The loyalty programs that you offer for your business can be specified using<br \/>\n  the <code>MemberProgram<\/code> structured data type nested under the <code>Organization<\/code><br \/>\n  structured data type.<br \/>\n  To specify the loyalty benefits (such as loyalty prices and points earned) for your individual products, separately<br \/>\n  add <code>UnitPriceSpecification<\/code> markup under your <code>Offer<\/code> structured data markup as described under<br \/>\n  <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/merchant-listing-product-offer-structured-data\/#unit-price-specification-properties\">merchant listings<\/a>.\n<\/p>\n<h2 id=\"feature-availability\" tabindex=\"-1\">Feature availability<\/h2>\n<p>\n  Loyalty program information is available in Google Search results in Australia, Brazil, Canada,<br \/>\n  France, Germany, Mexico, the UK, and the US, on both desktop and mobile.\n<\/p>\n<h2 id=\"add-structured-data\" tabindex=\"-1\">\n    How to add structured data<br \/>\n  <\/h2>\n<p>\n    Structured data is a standardized format for providing information about a page and classifying the page<br \/>\n    content. If you&#8217;re new to structured data, you can learn more about<br \/>\n    <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/structured-data-intro\/\">how structured data works<\/a>.\n    <\/p>\n<p>\n    Here&#8217;s an overview of how to build, test, and release structured data.<\/p>\n<ol>\n<li>Add the <a href=\"#structured-data-type-definitions\">required properties<\/a>. Based on the<br \/>\n      format you&#8217;re using, learn where to <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/structured-data-intro\/#format-placement\">insert structured data on the page<\/a>.<\/p>\n<aside class=\"note\">\n      <b>Using a CMS?<\/b> It may be easier to use a plugin that&#8217;s integrated into your CMS.<br \/>\n      <br \/>\n      <b>Using JavaScript?<\/b> Learn how to<br \/>\n      <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/generate-structured-data-with-javascript\/\">generate structured data with JavaScript<\/a>.<\/aside>\n<\/li>\n<li>Follow the <a href=\"#guidelines\">guidelines<\/a>.<\/li>\n<li>Validate your code using the<br \/>\n      <a href=\"https:\/\/search.google.com\/test\/rich-results\" class=\"external-link\">Rich Results Test<\/a><br \/>\n      and fix any critical errors. Consider also fixing any non-critical issues that may be flagged<br \/>\n      in the tool, as they can help improve the quality of your structured data (however, this isn&#8217;t necessary to be eligible for rich results). <\/li>\n<li>Deploy a few pages that include your structured data and use the <a href=\"https:\/\/support.google.com\/webmasters\/answer\/9012289\" class=\"external-link\">URL Inspection tool<\/a> to test how Google sees the page. Be sure that your page is<br \/>\n      accessible to Google and not blocked by a robots.txt file, the <code>noindex<\/code> tag, or<br \/>\n      login requirements. If the page looks okay, you can<br \/>\n      <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/recrawl-request\/\" class=\"external-link\">ask Google to recrawl your URLs<\/a>.<\/p>\n<aside class=\"note\"><b>Note<\/b>: Allow time for re-crawling and re-indexing. Remember that it<br \/>\n      may take several days after publishing a page for Google to find and crawl it.<\/aside>\n<\/li>\n<li>To keep Google informed of future changes, we recommend that you<br \/>\n      <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/build-submit-sitemap\/\" class=\"external-link\">submit a sitemap<\/a>. You can automate this with the<br \/>\n      <a href=\"https:\/\/developers.google.com\/webmaster-tools\/v1\/sitemaps\" class=\"external-link\">Search Console Sitemap API<\/a>.<\/li>\n<\/ol>\n<h2 id=\"examples\" tabindex=\"-1\">Examples<\/h2>\n<p>\n  Here&#8217;s an example of a <code>MemberProgram<\/code> structured data markup for a loyalty program with two membership tiers.\n<\/p>\n<form method=\"post\" target=\"_blank\" action=\"https:\/\/search.google.com\/test\/rich-results?utm_campaign=devsite&#038;utm_medium=jsonld&#038;utm_source=merchant\"><input type=\"submit\" value=\"Try it out in the Rich Results Test\" \/><textarea name=\"code_snippet\" style=\"display:none\">&lt;html&gt;<br \/>\n  &lt;head&gt;<br \/>\n    &lt;title&gt;About Us&lt;\/title&gt;<br \/>\n    &lt;script type=&#8221;application\/ld+json&#8221;&gt;<br \/>\n    {<br \/>\n      &#8220;@context&#8221;: &#8220;https:\/\/schema.org&#8221;,<br \/>\n      &#8220;@type&#8221;: &#8220;OnlineStore&#8221;,<br \/>\n      &#8220;hasMemberProgram&#8221;: {<br \/>\n        &#8220;@type&#8221;: &#8220;MemberProgram&#8221;,<br \/>\n        &#8220;name&#8221;: &#8220;Membership Plus&#8221;,<br \/>\n        &#8220;description&#8221;: &#8220;For frequent shoppers this is our top-rated loyalty program&#8221;,<br \/>\n        &#8220;url&#8221;: &#8220;https:\/\/www.example.com\/membership-plus&#8221;,<br \/>\n        &#8220;hasTiers&#8221;: [<br \/>\n          {<br \/>\n            &#8220;@type&#8221;: &#8220;MemberProgramTier&#8221;,<br \/>\n            &#8220;@id&#8221;: &#8220;#plus-tier-silver&#8221;,<br \/>\n            &#8220;name&#8221;: &#8220;silver&#8221;,<br \/>\n            &#8220;url&#8221;: &#8220;https:\/\/www.example.com\/membership-plus-silver&#8221;,<br \/>\n            &#8220;hasTierBenefit&#8221;: [<br \/>\n              &#8220;https:\/\/schema.org\/TierBenefitLoyaltyPoints&#8221;<br \/>\n            ],<br \/>\n            &#8220;membershipPointsEarned&#8221;: 5<br \/>\n          },<br \/>\n          {<br \/>\n            &#8220;@type&#8221;: &#8220;MemberProgramTier&#8221;,<br \/>\n            &#8220;@id&#8221;: &#8220;#plus-tier-gold&#8221;,<br \/>\n            &#8220;name&#8221;: &#8220;gold&#8221;,<br \/>\n            &#8220;url&#8221;: &#8220;https:\/\/www.example.com\/membership-plus-gold&#8221;,<br \/>\n            &#8220;hasTierRequirement&#8221;:<br \/>\n            {<br \/>\n              &#8220;@type&#8221;: &#8220;CreditCard&#8221;,<br \/>\n              &#8220;name&#8221;: &#8220;Example platinum card plus&#8221;<br \/>\n            },<br \/>\n            &#8220;hasTierBenefit&#8221;: [<br \/>\n              &#8220;https:\/\/schema.org\/TierBenefitLoyaltyPrice&#8221;,<br \/>\n              &#8220;https:\/\/schema.org\/TierBenefitLoyaltyPoints&#8221;<br \/>\n            ],<br \/>\n            &#8220;membershipPointsEarned&#8221;: 10<br \/>\n          }<br \/>\n        ]<br \/>\n      }<br \/>\n      \/\/ Other Organization-level properties<br \/>\n      \/\/ &#8230;<br \/>\n    }<br \/>\n    &lt;\/script&gt;<br \/>\n  &lt;\/head&gt;<br \/>\n  &lt;body&gt;<br \/>\n  &lt;\/body&gt;<br \/>\n&lt;\/html&gt;<\/textarea><\/form>\n<div><\/div>\n<h2 id=\"guidelines\" tabindex=\"-1\">Guidelines<\/h2>\n<p>For your loyalty program markup to be eligible for usage in Google Search, you must follow<br \/>\n  these guidelines:<\/p>\n<ul>\n<li><a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/structured-data-guidelines\/\">General structured data guidelines<\/a><\/li>\n<li><a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/search-essentials-overview\/\">Search Essentials<\/a><\/li>\n<li><a href=\"#technical-guidelines\">Technical guidelines<\/a><\/li>\n<\/ul>\n<h3 id=\"technical-guidelines\" tabindex=\"-1\">Technical guidelines<\/h3>\n<ul>\n<li>\n  Nest the <code>MemberProgram<\/code> markup under the <code>Organization<\/code> type on the page where you<br \/>\n  specify the administrative details and policies of your business.<br \/>\n  Refer to the <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/organization-organization-structured-data\/\">Organization markup<\/a> documentation for more information.\n<\/li>\n<li>\n  To specify the loyalty benefits (such as loyalty prices and points earned) for your individual products,<br \/>\n  add the <code>UnitPriceSpecification<\/code> markup defined for<br \/>\n  <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/merchant-listing-product-offer-structured-data\/#unit-price-specification-properties\">merchant listings<\/a>.<br \/>\n  The <code>MemberProgram<\/code> markup you define for your business works together with<br \/>\n  <code>validForMemberTier<\/code> and <code>MembershipPointsEarned<\/code> structured data to define<br \/>\n  the loyalty benefits for your customers when buying your products.\n<\/li>\n<\/ul>\n<h2 id=\"structured-data-type-definitions\" tabindex=\"-1\">Structured data type definitions<\/h2>\n<p>You must include the required properties for your structured data to be eligible for usage in<br \/>\n  Google Search. You can also include the recommended properties to add more information about your<br \/>\n  loyalty programs, which could provide a better user experience.<\/p>\n<h3 id=\"member-program-properties\" tabindex=\"-1\"><code>MemberProgram<\/code><\/h3>\n<p>Use the following properties to describe one or more loyalty programs and one or more<br \/>\n  tiers per loyalty program for your business.The full definition of <code>MemberProgram<\/code> is<br \/>\n  available at <a href=\"https:\/\/schema.org\/MemberProgram\" class=\"external-link\">schema.org\/MemberProgram<\/a>.\n  <\/p>\n<table class=\"responsive fixed\">\n<colgroup>\n<col width=\"30%\"><\/colgroup>\n<thead>\n<tr>\n<th colspan=\"2\">Required properties<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr id=\"description\">\n<td><code>description<\/code><\/td>\n<td>\n<p><code><a href=\"https:\/\/schema.org\/Text\" class=\"external-link\">Text<\/a><\/code><\/p>\n<p>The description of the loyalty program, describing the primary benefits for members.<\/p>\n<\/td>\n<\/tr>\n<tr id=\"hasTiers\">\n<td><code>hasTiers<\/code><\/td>\n<td>\n<p>Repeated <code><a href=\"https:\/\/schema.org\/MemberProgramTier\" class=\"external-link\">MemberProgramTier<\/a><\/code><\/p>\n<p>Defines a tier under a loyalty program. A loyalty program must have at least one tier.<br \/>\n                See the list of <a href=\"#memberprogram-tier-properties\"><code>MemberProgramTier<\/code> properties<\/a><br \/>\n                supported by Google.<\/p>\n<\/td>\n<\/tr>\n<tr id=\"name\">\n<td><code>name<\/code><\/td>\n<td>\n<p><code><a href=\"https:\/\/schema.org\/Text\" class=\"external-link\">Text<\/a><\/code><\/p>\n<p>The name of the loyalty program.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table class=\"responsive fixed\">\n<colgroup>\n<col width=\"30%\"><\/colgroup>\n<thead>\n<tr>\n<th colspan=\"2\">Recommended properties<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr id=\"url\">\n<td><code>url<\/code><\/td>\n<td>\n<p><code><a href=\"https:\/\/schema.org\/URL\" class=\"external-link\">URL<\/a><\/code><\/p>\n<p>A URL of the web page where a shopper can sign up for this loyalty program.<br \/>\n                Don&#8217;t provide multiple URLs. If not provided, the URL of the page<br \/>\n                containing the <code>MemberProgram<\/code> structured data will be assumed.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 id=\"memberprogram-tier-properties\" tabindex=\"-1\"><code>MemberProgramTier<\/code><\/h4>\n<p>\n        <code>MemberProgramTier<\/code> is used to define a tier under a <code>MemberProgram<\/code>.<br \/>\n        A loyalty program can have multiple tiers. For example, bronze, silver, and gold.\n      <\/p>\n<p>\n        The full definition of <code>MemberProgramTier<\/code> is available at<br \/>\n        <a href=\"https:\/\/schema.org\/MemberProgramTier\" class=\"external-link\">schema.org\/MemberProgramTier<\/a>.\n      <\/p>\n<table class=\"responsive fixed\">\n<colgroup>\n<col width=\"30%\"><\/colgroup>\n<thead>\n<tr>\n<th colspan=\"2\">Required properties<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr id=\"hasTierBenefit\">\n<td><code>hasTierBenefit<\/code><\/td>\n<td>\n<p>Repeated <code><a href=\"https:\/\/schema.org\/TierBenefitEnumeration\" class=\"external-link\">TierBenefitEnumeration<\/a><\/code><\/p>\n<p>Benefit for members of this member tier. A member tier can have multiple benefits. The short names without the URL prefix<br \/>\n                are also supported (for example <code>TierBenefitLoyaltyPoints<\/code>).<\/p>\n<ul>\n<li><code>https:\/\/schema.org\/TierBenefitLoyaltyPoints<\/code>: The benefit is earning loyalty points. Also specify <code>membershipPointsEarned<\/code>.<\/li>\n<li><code>https:\/\/schema.org\/TierBenefitLoyaltyPrice<\/code>: The benefit is a member&#8217;s only price.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr id=\"name\">\n<td><code>name<\/code><\/td>\n<td>\n<p><code><a href=\"https:\/\/schema.org\/Text\" class=\"external-link\">Text<\/a><\/code><\/p>\n<p>The name of the membership tier.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table class=\"responsive fixed\">\n<colgroup>\n<col width=\"30%\"><\/colgroup>\n<thead>\n<tr>\n<th colspan=\"2\">Recommended properties<\/th>\n<\/tr>\n<\/thead>\n<tr id=\"hasTierRequirement\">\n<td><code>hasTierRequirement<\/code><\/td>\n<td>\n<p>\n              <code><a href=\"https:\/\/schema.org\/CreditCard\" class=\"external-link\">CreditCard<\/a><\/code>, or<br \/>\n              <code><a href=\"https:\/\/schema.org\/MonetaryAmount\" class=\"external-link\">MonetaryAmount<\/a><\/code>, or<br \/>\n              <code><a href=\"https:\/\/schema.org\/UnitPriceSpecification\" class=\"external-link\">UnitPriceSpecification<\/a><\/code>, or<br \/>\n              <code><a href=\"https:\/\/schema.org\/Text\" class=\"external-link\">Text<\/a><\/code>\n            <\/p>\n<p>The requirement to join a member tier. If not specified, anyone can join the tier for free. For a non-free tier, specify<br \/>\n              a value of the type representing the requirement to join the tier.\n            <\/p>\n<ul>\n<li><code>https:\/\/schema.org\/CreditCard<\/code>: Specify the credit card that the user needs to sign up for to join the tier.<br \/>\n                For example:<\/p>\n<div><\/div>\n<\/li>\n<li><code>https:\/\/schema.org\/MonetaryAmount<\/code>: Specify the minimum amount of spending required to join the tier.<br \/>\n                For example, for a $250 minimum spending, specify:<\/p>\n<div><\/div>\n<\/li>\n<li><code>https:\/\/schema.org\/UnitPriceSpecification<\/code>: Specify the periodic fee a consumer needs to pay for membership in the tier.<br \/>\n                For example, for a 12 month membership, billed once a month at 9.99\u20ac, specify:<\/p>\n<div><\/div>\n<\/li>\n<li><code>https:\/\/schema.org\/Text<\/code>: Describe any other requirement to join the tier. For example:\n<div><\/div>\n<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td><code>membershipPointsEarned<\/code><\/td>\n<td>\n<p><code><a href=\"https:\/\/schema.org\/membershipPointsEarned\" class=\"external-link\">QuantitativeValue<\/a><\/code><\/p>\n<p>The number of loyalty points earned by the consumer per currency unit spent when <code>hasTierBenefit<\/code> is equal to <code>https:\/\/schema.org\/TierBenefitLoyaltyPoints<\/code>.\n            <\/p>\n<\/td>\n<\/tr>\n<tr id=\"url\">\n<td><code>url<\/code><\/td>\n<td>\n<p><code><a href=\"https:\/\/schema.org\/URL\" class=\"external-link\">URL<\/a><\/code><\/p>\n<p>A URL of the web page where a shopper can sign up for this specific member tier.<br \/>\n              Don&#8217;t provide multiple URLs.<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<h2 id=\"alternative-approach-loyalty-settings\" tabindex=\"-1\">\n    Using Merchant Center to configure loyalty programs with Google<br \/>\n  <\/h2>\n<p>\n    Loyalty programs can be difficult to configure and keep up-to-date with markup. If you have a<br \/>\n    Google Merchant Center account, you can alternatively consider configuring your loyalty<br \/>\n    program directly in Google Merchant Center instead of using markup. Refer to the<br \/>\n    <a href=\"https:\/\/support.google.com\/merchants\/answer\/12827255\" class=\"external-link\">Merchant help center article about loyalty program<\/a><br \/>\n    for more information.\n  <\/p>\n<p>\n    If you provide both markup and Merchant Center loyalty programs, Google will use the Merchant<br \/>\n    Center settings.\n  <\/p>\n<h2 id=\"troubleshooting\" tabindex=\"-1\">Troubleshooting<\/h2>\n<p>\n    If you&#8217;re having trouble implementing or debugging structured data, here are some resources that<br \/>\n    may help you.\n  <\/p>\n<ul>\n<li>If you&#8217;re using a content management system (CMS) or someone else is taking care of your site,<br \/>\n      ask them to help you. Make sure to forward any Search Console message that details the issue to them.<\/li>\n<li>Google does not guarantee that features that consume structured data will show up in search results.<br \/>\n      For a list of common reasons why Google may not show your content in a rich result, see the<br \/>\n      <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/structured-data-guidelines\/\">General Structured Data Guidelines<\/a>.<\/li>\n<li>You might have an error in your structured data. Check the<br \/>\n      <a href=\"https:\/\/support.google.com\/webmasters\/answer\/13300873\" class=\"external-link\">list of structured data errors<\/a><br \/>\n      and the <a href=\"https:\/\/support.google.com\/webmasters\/answer\/9166415\" class=\"external-link\">Unparsable structured data report<\/a>.<\/li>\n<li>If you received a structured data manual action against your page, the structured data on<br \/>\n      the page will be ignored (although the page can still appear in Google Search results). To fix<br \/>\n      <a href=\"https:\/\/support.google.com\/webmasters\/answer\/9044175#zippy=%2Cstructured-data-issue\" class=\"external-link\">structured data issues<\/a>, use the <a href=\"https:\/\/support.google.com\/webmasters\/answer\/9044175\" class=\"external-link\">Manual Actions report<\/a>.\n    <\/li>\n<li>Review the <a href=\"#guidelines\">guidelines<\/a> again to identify if your content isn&#8217;t compliant<br \/>\n      with the guidelines. The problem can be caused by either spammy content or spammy markup usage.<br \/>\n        However, the issue may not be a syntax issue, and so the Rich Results Test won&#8217;t be able to<br \/>\n        identify these issues.\n    <\/li>\n<li><a href=\"https:\/\/support.google.com\/webmasters\/answer\/13300208\" class=\"external-link\">Troubleshoot missing rich results \/ drop in total rich results<\/a>.<\/li>\n<li>Allow time for re-crawling and re-indexing. Remember that it may take several days after<br \/>\n      publishing a page for Google to find and crawl it. For general questions about crawling and indexing, check the<br \/>\n      <a href=\"https:\/\/alienroad.com\/google-bilgi-bankasi\/google-search-crawling-and-indexing-faq\/\" class=\"external-link\">Google Search crawling and indexing FAQ<\/a>.\n    <\/li>\n<li>Post a question in the <a href=\"https:\/\/support.google.com\/webmasters\/community\" class=\"external-link\">Google Search Central forum<\/a>.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Learn how to mark up loyalty programs (also known as<\/p>\n","protected":false},"menu_order":102,"template":"","meta":{"footnotes":""},"ar_kb_kategori":[680],"ar_kb_etiket":[],"class_list":["post-25518","ar_kb","type-ar_kb","status-publish","has-post-thumbnail","hentry","ar_kb_kategori-shopping"],"_links":{"self":[{"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/ar_kb\/25518","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/ar_kb"}],"about":[{"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/types\/ar_kb"}],"version-history":[{"count":0,"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/ar_kb\/25518\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/media\/27550"}],"wp:attachment":[{"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/media?parent=25518"}],"wp:term":[{"taxonomy":"ar_kb_kategori","embeddable":true,"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/ar_kb_kategori?post=25518"},{"taxonomy":"ar_kb_etiket","embeddable":true,"href":"https:\/\/alienroad.com\/wp-json\/wp\/v2\/ar_kb_etiket?post=25518"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}