{"id":345,"date":"2026-10-25T13:08:04","date_gmt":"2026-10-25T13:08:04","guid":{"rendered":"https:\/\/vectalk.com.br\/blog\/whatsapp-opt-in-list\/"},"modified":"2026-10-25T13:08:07","modified_gmt":"2026-10-25T13:08:07","slug":"whatsapp-opt-in-list","status":"publish","type":"post","link":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/","title":{"rendered":"How to build a WhatsApp opt-in list (and keep it healthy)"},"content":{"rendered":"\n<p><em>Updated on October 25, 2026<\/em><\/p>\n\n\n\n<p>WhatsApp opt-in is the permission a person gives to receive messages from your business. Under Meta&#8217;s rules, it must make clear that the person is agreeing to receive communications, name the business, and comply with local law; the collection method (website, SMS, phone, paper) is up to you. A healthy opt-in list is one where every contact has proof of when and how they agreed, opt-outs are honored immediately, and people who no longer read stop receiving messages.<\/p>\n\n\n\n<p>This guide covers the official rules, seven ways to collect permission, what to store in your database, and the routines that keep the list clean.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Meta requires<\/h2>\n\n\n\n<p>The <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/getting-opt-in\" target=\"_blank\" rel=\"noreferrer noopener\">Get opt-in for WhatsApp<\/a> page says businesses may contact people on WhatsApp if (a) they have given their mobile phone number and (b) the business has received opt-in permission confirming they want to receive messages or calls from that business. There are three requirements:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Clearly state that the person is opting in to receive communications from the business.<\/li>\n\n\n<li>Clearly state the business&#8217;s name.<\/li>\n\n\n<li>Comply with applicable law.<\/li>\n\n<\/ol>\n\n\n\n<p>Since the November 2024 policy update, opt-in can be general and doesn&#8217;t have to mention WhatsApp specifically, as long as it complies with local law.<\/p>\n\n\n\n<p>The <a href=\"https:\/\/whatsappbusiness.com\/pt-br\/policy\/\" target=\"_blank\" rel=\"noreferrer noopener\">WhatsApp Business Messaging Policy<\/a> (updated September 23, 2026) adds the other half of the rule: businesses must <strong>honor all requests to stop receiving messages, whether made on or off WhatsApp<\/strong>, and messages must not confuse, surprise or deceive recipients.<\/p>\n\n\n\n<p>In short: having the number isn&#8217;t permission. A purchased list, numbers scraped from groups, or old records without consent are not opt-in.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">General opt-in or per category?<\/h2>\n\n\n\n<p>Meta accepts a general opt-in, but the same page recommends as best practice:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>obtaining an opt-in that covers the categories of messages the business will send (order updates, offers, recommendations), <strong>or<\/strong><\/li>\n\n\n<li>obtaining separate opt-ins per category, which reduces the risk of blocks caused by unexpected messages.<\/li>\n\n<\/ul>\n\n\n\n<p>In practice, the per-category model is better for the list. Someone who agreed to &#8220;order status&#8221; and gets offers every week will block you; someone who agreed to &#8220;offers&#8221; expects them. Separate at least two purposes:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Purpose<\/th><th>Examples<\/th><th>Template<\/th><\/tr><\/thead><tbody><tr><td>Transactional<\/td><td>Orders, delivery, billing, appointments, course access<\/td><td>Utility<\/td><\/tr><tr><td>Promotional<\/td><td>Offers, launches, news, invitations<\/td><td>Marketing<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To see where each message fits, read <a href=\"https:\/\/vectalk.com.br\/blog\/en\/event-reminder-utility-template\/\">event reminders: utility or marketing<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Seven ways to collect opt-in<\/h2>\n\n\n\n<p>Meta lists SMS, website, phone (IVR) and in person or on paper as supported examples. These are the most common methods in practice, all within those requirements:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Checkbox at checkout or sign-up.<\/strong> Unchecked by default, with the business name and purpose in the text.<\/li>\n\n\n<li><strong>Lead capture form (landing page).<\/strong> The WhatsApp field comes with a consent sentence right below it.<\/li>\n\n\n<li><strong>Customer-initiated conversation.<\/strong> The person messages you (through a link, QR code or ad). Within the 24-hour window you can reply freely. To send templates later, ask for permission right there, with buttons.<\/li>\n\n\n<li><strong>QR code at the point of sale.<\/strong> The QR opens a chat with a pre-filled message; the business&#8217;s first reply asks for confirmation.<\/li>\n\n\n<li><strong>SMS or email to your current base.<\/strong> &#8220;Reply YES to get updates from Example Store on WhatsApp.&#8221; Store the reply.<\/li>\n\n\n<li><strong>Phone or IVR.<\/strong> The agent or IVR asks and records the answer, with date and recording when available.<\/li>\n\n\n<li><strong>Signed paper form.<\/strong> A sign-up form at the store or clinic, with an authorization field.<\/li>\n\n<\/ol>\n\n\n\n<p>Consent copy that meets all three requirements:<\/p>\n\n\n\n<p><em>&#8220;I want to receive order updates and offers from Example Store on WhatsApp. I can cancel anytime by replying STOP.&#8221;<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Asking for opt-in inside the chat<\/h3>\n\n\n\n<p>When the customer starts the conversation, use quick reply buttons to record their choice in one tap:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-json\">{\n  \"messaging_product\": \"whatsapp\",\n  \"to\": \"5511988887777\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"button\",\n    \"body\": { \"text\": \"Would you like to get order updates and offers from Example Store here? You can opt out anytime.\" },\n    \"action\": {\n      \"buttons\": [\n        { \"type\": \"reply\", \"reply\": { \"id\": \"optin_all\", \"title\": \"Orders and offers\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"optin_orders\", \"title\": \"Orders only\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"optin_no\", \"title\": \"No, thanks\" } }\n      ]\n    }\n  }\n}<\/code><\/pre>\n\n\n\n<p>The answer arrives in the webhook as <code>interactive.button_reply.id<\/code>. For fuller forms (name, email, preferences), <a href=\"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-flows-en\/\">WhatsApp Flows<\/a> has a dedicated consent component, <code>OptIn<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Confirming opt-in collected elsewhere<\/h3>\n\n\n\n<p>If consent came from your website or email, Meta allows a confirmation message as a <strong>utility<\/strong> template, under the &#8220;Opt-In Management on WhatsApp&#8221; row of the <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/templates\/template-categorization\" target=\"_blank\" rel=\"noreferrer noopener\">categorization documentation<\/a>. The official example reads: &#8220;Thanks for confirming opt-in! You&#8217;ll now receive notifications via WhatsApp.&#8221; Opt-out confirmations fall under the same row.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What to store as proof<\/h2>\n\n\n\n<p>Store consent with the contact, with enough detail to show when, how and for what the person agreed:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-json\">{\n  \"wa_id\": \"5511988887777\",\n  \"consents\": [\n    {\n      \"purpose\": \"transactional\",\n      \"source\": \"website_checkout\",\n      \"accepted_text\": \"I want to receive order updates from Example Store on WhatsApp.\",\n      \"text_version\": \"2026-09\",\n      \"accepted_at\": \"2026-10-12T14:32:10-03:00\",\n      \"ip\": \"200.0.0.10\"\n    },\n    {\n      \"purpose\": \"promotional\",\n      \"source\": \"whatsapp_button\",\n      \"reply_wamid\": \"wamid.HBgN...\",\n      \"accepted_at\": \"2026-10-12T14:40:02-03:00\"\n    }\n  ],\n  \"optouts\": []\n}<\/code><\/pre>\n\n\n\n<p>Good rules for this record:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Version your consent text.<\/strong> If you change the wording, the old record still points to the text the person saw.<\/li>\n\n\n<li><strong>Store the source.<\/strong> Checkout, form, WhatsApp button, IVR, paper.<\/li>\n\n\n<li><strong>For consent given on WhatsApp, store the <code>wamid<\/code><\/strong> of the customer&#8217;s reply.<\/li>\n\n\n<li><strong>Never delete an opt-out.<\/strong> Record its date and source; that&#8217;s what prevents an accidental re-import.<\/li>\n\n<\/ul>\n\n\n\n<p>Depending on where you operate, privacy law also applies. In Brazil, that&#8217;s the LGPD (Law 13,709\/2018, Brazil&#8217;s data protection law). Legal basis, retention and withdrawal of consent are matters for your legal team; the article <a href=\"https:\/\/vectalk.com.br\/blog\/en\/lgpd-whatsapp-en\/\">LGPD and WhatsApp<\/a> explains the concepts but is not legal advice.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to keep the list healthy<\/h2>\n\n\n\n<p>Collecting is half the work. The other half is removing people who don&#8217;t want or no longer read your messages.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Opt-out through every door<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Opt-out button on marketing templates<\/strong>, such as &#8220;Stop offers&#8221;. The tap reaches your webhook with <code>type: \"button\"<\/code>; mark the opt-out immediately.<\/li>\n\n\n<li><strong>Keywords in the chat<\/strong>, such as STOP, UNSUBSCRIBE, CANCEL. Handle variations and reply with a confirmation.<\/li>\n\n\n<li><strong>Requests outside WhatsApp<\/strong>, by email, phone or customer service. The policy requires honoring them too.<\/li>\n\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Users can also stop marketing from WhatsApp itself<\/h3>\n\n\n\n<p>People can stop your business&#8217;s marketing messages directly in the app. Meta tells you in two ways:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>the <strong><code>user_preferences<\/code><\/strong> webhook arrives with <code>category: \"marketing_messages\"<\/code> and <code>value: \"stop\"<\/code> (or <code>\"resume\"<\/code> when they opt back in), per the <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/webhooks\/reference\/user_preferences\" target=\"_blank\" rel=\"noreferrer noopener\">webhook reference<\/a>;<\/li>\n\n\n<li>if you send marketing anyway, the status comes back <code>failed<\/code> with error <strong><code>131050<\/code><\/strong>, and Meta&#8217;s guidance is not to retry.<\/li>\n\n<\/ul>\n\n\n\n<p>Sync both with your database: <code>stop<\/code> removes the contact from marketing audiences, <code>resume<\/code> adds them back.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Engagement and frequency<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Per-user limit.<\/strong> Error <code>131049<\/code> means Meta didn&#8217;t deliver the message to maintain healthy ecosystem engagement. The official guidance is to wait at least 24 hours before resending. Contacts that keep hitting this error are saturated. See <a href=\"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-error-131049-marketing-limit\/\">per-user marketing limits<\/a>.<\/li>\n\n\n<li><strong>Inactive contacts.<\/strong> People who haven&#8217;t read or replied in months drag your read rate down. Run a reconfirmation campaign (&#8220;Do you still want our offers?&#8221;) and remove those who don&#8217;t answer.<\/li>\n\n\n<li><strong>Frequency cap.<\/strong> Set in your own system how many marketing messages each contact gets per week.<\/li>\n\n\n<li><strong>Quality.<\/strong> Blocks and reports lower your <a href=\"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-phone-number-quality-rating\/\">phone number quality rating<\/a>. Monitor quality whenever you launch a new collection method, as Meta itself recommends.<\/li>\n\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Monthly routine<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Task<\/th><th>How<\/th><\/tr><\/thead><tbody><tr><td>Remove pending opt-outs<\/td><td>Cross-check buttons, keywords, <code>user_preferences<\/code> and <code>131050<\/code><\/td><\/tr><tr><td>Review contacts with frequent <code>131049<\/code><\/td><td>Lower their frequency<\/td><\/tr><tr><td>Reconfirm inactive contacts<\/td><td>Reconfirmation template; remove non-responders<\/td><\/tr><tr><td>Audit new sources<\/td><td>Check that the consent text names the business and purpose<\/td><\/tr><tr><td>Check quality<\/td><td>In WhatsApp Manager, before every large campaign<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Before a large send, estimate the cost with <a href=\"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-campaign-cost\/\">how much a WhatsApp campaign costs<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to do it with Vectalk<\/h2>\n\n\n\n<p>Vectalk uses the same payloads and webhooks as the Cloud API, so everything in this guide works the same way:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Opt-in buttons<\/strong>: <code>POST \/api\/messages<\/code> with <code>type: \"interactive\"<\/code> (<a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/messages\/send-buttons\">buttons docs<\/a>).<\/li>\n\n\n<li><strong>QR code with a pre-filled message<\/strong>: <code>POST \/api\/qr-codes<\/code>, which returns the <code>wa.me<\/code> link and the QR image (<a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/qr-codes\/create\">docs<\/a>).<\/li>\n\n\n<li><strong>Replies, opt-out buttons and <code>131050<\/code>\/<code>131049<\/code> errors<\/strong>: in the webhook registered with <code>POST \/api\/webhooks<\/code>.<\/li>\n\n<\/ul>\n\n\n\n<p>Create your account at <a href=\"https:\/\/apps.vectalk.com.br\/register\">apps.vectalk.com.br\/register<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently asked questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">If a customer messaged me, is that already opt-in?<\/h3>\n\n\n\n<p>It gives you the 24-hour window to reply. To send templates later, on the business&#8217;s initiative, ask for permission explicitly, with the business name and purpose, and store the answer.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can I use my old customer database?<\/h3>\n\n\n\n<p>Only the contacts who gave permission to receive messages from your business. For the rest, ask for opt-in through a channel where you already have a relationship (email, SMS, at the next purchase) before messaging them on WhatsApp.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Does the opt-in have to mention WhatsApp?<\/h3>\n\n\n\n<p>Since the November 2024 update, not necessarily: it can be general, as long as it complies with local law. Naming the channel, though, sets clear expectations and reduces blocks.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How long is an opt-in valid?<\/h3>\n\n\n\n<p>Meta doesn&#8217;t set an expiry. What matters in practice is engagement: contacts who stopped reading long ago should be reconfirmed or removed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can I buy a list that has opt-in?<\/h3>\n\n\n\n<p>The opt-in has to be for your business, with its name. Permission given to another company doesn&#8217;t meet the requirement, and lists like that tend to generate blocks and reports.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><strong>Official sources checked on October 25, 2026:<\/strong> <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/getting-opt-in\" target=\"_blank\" rel=\"noreferrer noopener\">Get opt-in for WhatsApp<\/a>, <a href=\"https:\/\/whatsappbusiness.com\/pt-br\/policy\/\" target=\"_blank\" rel=\"noreferrer noopener\">WhatsApp Business Messaging Policy<\/a> (updated September 23, 2026), <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/templates\/template-categorization\" target=\"_blank\" rel=\"noreferrer noopener\">Template categorization<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/webhooks\/reference\/user_preferences\" target=\"_blank\" rel=\"noreferrer noopener\">user_preferences webhook<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/support\/error-codes\" target=\"_blank\" rel=\"noreferrer noopener\">Error codes<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/components\" target=\"_blank\" rel=\"noreferrer noopener\">Flows components<\/a>, <a href=\"https:\/\/www.planalto.gov.br\/ccivil_03\/_ato2015-2018\/2018\/lei\/l13709.htm\" target=\"_blank\" rel=\"noreferrer noopener\">Law 13,709\/2018 (LGPD)<\/a>, <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/qr-codes\/create\">Vectalk: QR codes<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Meta&#8217;s official opt-in rules, seven ways to collect permission, what to store as proof, and the routines that keep your WhatsApp list healthy.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-345","post","type-post","status-publish","format-standard","hentry","category-blog"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>WhatsApp opt-in: build and maintain your list | Vectalk<\/title>\n<meta name=\"description\" content=\"WhatsApp opt-in: Meta&#039;s official rules, ways to collect permission, how to store proof of consent and how to keep your list clean with opt-outs.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WhatsApp opt-in: build and maintain your list | Vectalk\" \/>\n<meta property=\"og:description\" content=\"WhatsApp opt-in: Meta&#039;s official rules, ways to collect permission, how to store proof of consent and how to keep your list clean with opt-outs.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Vectalk\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-25T13:08:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-25T13:08:07+00:00\" \/>\n<meta name=\"author\" content=\"wanderleyfcunha\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"wanderleyfcunha\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/\"},\"author\":{\"name\":\"wanderleyfcunha\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\"},\"headline\":\"How to build a WhatsApp opt-in list (and keep it healthy)\",\"datePublished\":\"2026-10-25T13:08:04+00:00\",\"dateModified\":\"2026-10-25T13:08:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/\"},\"wordCount\":1436,\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/\",\"url\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/\",\"name\":\"WhatsApp opt-in: build and maintain your list | Vectalk\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#website\"},\"datePublished\":\"2026-10-25T13:08:04+00:00\",\"dateModified\":\"2026-10-25T13:08:07+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\"},\"description\":\"WhatsApp opt-in: Meta's official rules, ways to collect permission, how to store proof of consent and how to keep your list clean with opt-outs.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/en\\\/whatsapp-opt-in-list\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to build a WhatsApp opt-in list (and keep it healthy)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/\",\"name\":\"Blog Vectalk\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\",\"name\":\"wanderleyfcunha\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"caption\":\"wanderleyfcunha\"},\"sameAs\":[\"https:\\\/\\\/vectalk.com.br\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"WhatsApp opt-in: build and maintain your list | Vectalk","description":"WhatsApp opt-in: Meta's official rules, ways to collect permission, how to store proof of consent and how to keep your list clean with opt-outs.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/","og_locale":"en_US","og_type":"article","og_title":"WhatsApp opt-in: build and maintain your list | Vectalk","og_description":"WhatsApp opt-in: Meta's official rules, ways to collect permission, how to store proof of consent and how to keep your list clean with opt-outs.","og_url":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/","og_site_name":"Blog Vectalk","article_published_time":"2026-10-25T13:08:04+00:00","article_modified_time":"2026-10-25T13:08:07+00:00","author":"wanderleyfcunha","twitter_card":"summary_large_image","twitter_misc":{"Written by":"wanderleyfcunha","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/#article","isPartOf":{"@id":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/"},"author":{"name":"wanderleyfcunha","@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b"},"headline":"How to build a WhatsApp opt-in list (and keep it healthy)","datePublished":"2026-10-25T13:08:04+00:00","dateModified":"2026-10-25T13:08:07+00:00","mainEntityOfPage":{"@id":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/"},"wordCount":1436,"articleSection":["Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/","url":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/","name":"WhatsApp opt-in: build and maintain your list | Vectalk","isPartOf":{"@id":"https:\/\/vectalk.com.br\/blog\/#website"},"datePublished":"2026-10-25T13:08:04+00:00","dateModified":"2026-10-25T13:08:07+00:00","author":{"@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b"},"description":"WhatsApp opt-in: Meta's official rules, ways to collect permission, how to store proof of consent and how to keep your list clean with opt-outs.","breadcrumb":{"@id":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vectalk.com.br\/blog\/en\/whatsapp-opt-in-list\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vectalk.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"How to build a WhatsApp opt-in list (and keep it healthy)"}]},{"@type":"WebSite","@id":"https:\/\/vectalk.com.br\/blog\/#website","url":"https:\/\/vectalk.com.br\/blog\/","name":"Blog Vectalk","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vectalk.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b","name":"wanderleyfcunha","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","caption":"wanderleyfcunha"},"sameAs":["https:\/\/vectalk.com.br\/blog"]}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/comments?post=345"}],"version-history":[{"count":1,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/345\/revisions"}],"predecessor-version":[{"id":348,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/345\/revisions\/348"}],"wp:attachment":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/media?parent=345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/categories?post=345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/tags?post=345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}