> ## Documentation Index
> Fetch the complete documentation index at: https://help.hoopai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 2021 Updates

> HoopAI platform updates released in 2021.

export const Collapse = () => {
  useEffect(() => {
    document.body.classList.add('changelog-page');
    const typeClasses = {
      'feature': 'tag-feature',
      'new feature': 'tag-feature',
      'enhancement': 'tag-enhancement',
      'improvement': 'tag-improvement',
      'bug fix': 'tag-bugfix',
      'fix': 'tag-bugfix'
    };
    const init = () => {
      document.querySelectorAll('.update-container').forEach(c => {
        if (c.dataset.ci) return;
        c.dataset.ci = '1';
        const contentEl = c.querySelector('[data-component-part="update-content"]');
        const desc = c.querySelector('[data-component-part="update-description"]');
        if (!contentEl || !desc) return;
        c.querySelectorAll('[data-component-part="update-tag"]').forEach(tag => {
          const cls = typeClasses[tag.textContent.trim().toLowerCase()];
          if (cls) tag.classList.add(cls);
        });
        const wrapper = document.createElement('div');
        wrapper.className = 'cl-collapse';
        contentEl.parentNode.insertBefore(wrapper, contentEl);
        wrapper.appendChild(contentEl);
        const titleRow = document.createElement('div');
        titleRow.className = 'cl-title-row';
        desc.parentNode.insertBefore(titleRow, desc);
        titleRow.appendChild(desc);
        const btn = document.createElement('button');
        btn.className = 'cl-toggle';
        btn.setAttribute('aria-label', 'Toggle details');
        const ns = 'http://www.w3.org/2000/svg';
        const svg = document.createElementNS(ns, 'svg');
        svg.setAttribute('width', '16');
        svg.setAttribute('height', '16');
        svg.setAttribute('viewBox', '0 0 20 20');
        svg.setAttribute('fill', 'none');
        const h = document.createElementNS(ns, 'path');
        h.setAttribute('d', 'M4 10h12');
        h.setAttribute('stroke', 'currentColor');
        h.setAttribute('stroke-width', '1.5');
        h.setAttribute('stroke-linecap', 'round');
        h.classList.add('cl-h');
        const v = document.createElementNS(ns, 'path');
        v.setAttribute('d', 'M10 4v12');
        v.setAttribute('stroke', 'currentColor');
        v.setAttribute('stroke-width', '1.5');
        v.setAttribute('stroke-linecap', 'round');
        v.classList.add('cl-v');
        svg.appendChild(h);
        svg.appendChild(v);
        btn.appendChild(svg);
        titleRow.appendChild(btn);
        let expanded = false;
        const toggle = e => {
          e.preventDefault();
          e.stopPropagation();
          expanded = !expanded;
          wrapper.classList.toggle('open', expanded);
          btn.classList.toggle('open', expanded);
        };
        titleRow.addEventListener('click', toggle);
      });
    };
    const t = setTimeout(init, 400);
    return () => {
      clearTimeout(t);
      document.body.classList.remove('changelog-page');
    };
  }, []);
  return null;
};

<Collapse />

<Update label="December 23, 2021" description="Custom Domains for Funnels" tags={["Feature", "Funnels"]}>
  **What's new:** Connect your own custom domain to any funnel. Visitors see your branded URL instead of a platform subdomain, and SSL certificates are provisioned automatically.

  **Why it matters:** A custom domain increases trust and reinforces your brand with every page visit.

  **How to use it:** Go to **Sites** > **Funnels** > select a funnel > **Settings** > **Custom Domain** and follow the DNS instructions.
</Update>

<Update label="December 23, 2021" description="Quiz Builder" tags={["Feature", "Funnels"]}>
  **What's new:** Build interactive quizzes with scored outcomes, branching logic, and result pages. Capture leads with opt-in forms at the end of the quiz flow.

  **Why it matters:** Quizzes drive high engagement and qualified lead capture.

  **How to use it:** Go to **Sites** > **Funnels** > **Add Funnel Step** > select **Quiz** template.
</Update>

<Update label="December 9, 2021" description="Survey Builder Launch" tags={["Feature", "Funnels"]}>
  **What's new:** Create multi-step surveys with various question types including text, dropdown, radio, checkbox, rating, and file upload. Responses are stored on the contact record.

  **Why it matters:** Collect structured feedback and qualification data directly within your funnels.

  **How to use it:** Go to **Sites** > **Funnels** > add a **Survey** step, then configure your questions in the editor.
</Update>

<Update label="December 9, 2021" description="Form Conditional Logic" tags={["Feature", "Funnels"]}>
  **What's new:** Show or hide form fields based on previous answers. Build dynamic forms that adapt to user input for shorter, more relevant experiences.

  **Why it matters:** Smarter forms reduce abandonment and capture more relevant data.

  **How to use it:** In the form builder, click a field > **Logic** tab > set conditions for visibility.
</Update>

<Update label="November 25, 2021" description="Form Builder File Upload Field" tags={["Feature", "Funnels"]}>
  **What's new:** Add file upload fields to any form or survey. Accepted file types and size limits are configurable. Uploaded files are stored in Media Storage and linked to the contact.

  **Why it matters:** Collect documents, images, and files from leads without email back-and-forth.

  **How to use it:** In the form builder, drag the **File Upload** field onto your form and configure allowed types.
</Update>

<Update label="November 25, 2021" description="Mobile App Push Notification Settings" tags={["Feature", "Mobile App"]}>
  **What's new:** Customize which events trigger push notifications on the mobile app — new conversations, appointments, form submissions, opportunity updates, and more.

  **Why it matters:** Control notification volume so you see what matters without being overwhelmed.

  **How to use it:** Open the HoopAI mobile app > **Settings** > **Notifications** and toggle categories on or off.
</Update>

<Update label="November 11, 2021" description="Form Builder Redesign" tags={["Enhancement", "Funnels"]}>
  **What's new:** The form builder has been redesigned with a drag-and-drop interface, multi-column layouts, custom styling per field, and real-time preview. All standard and custom fields are supported.

  **Why it matters:** Build better-looking forms faster with more layout flexibility.

  **How to use it:** Go to **Sites** > **Funnels** > add or edit a form step to see the updated builder.
</Update>

<Update label="November 11, 2021" description="Funnel Custom Domain SSL" tags={["Feature", "Funnels"]}>
  **What's new:** SSL certificates for custom funnel domains are now provisioned and renewed automatically. No manual certificate uploads required.

  **Why it matters:** Secure HTTPS connections without any technical overhead.

  **How to use it:** Automatic — SSL is provisioned when you add a custom domain to a funnel.
</Update>

<Update label="October 28, 2021" description="Mobile App Contact Management" tags={["Feature", "Mobile App"]}>
  **What's new:** View, search, edit, and create contacts directly from the mobile app. Access contact details, activity history, tags, and custom fields on the go.

  **Why it matters:** Manage your CRM from anywhere without needing a desktop.

  **How to use it:** Open the HoopAI mobile app and tap **Contacts** in the bottom navigation.
</Update>

<Update label="October 28, 2021" description="Mobile App Opportunity Management" tags={["Feature", "Mobile App"]}>
  **What's new:** View and update opportunities from the mobile app. See your pipeline, move deals between stages, and update deal values from your phone.

  **Why it matters:** Keep your pipeline moving even when you are away from your desk.

  **How to use it:** Open the mobile app and tap **Opportunities** to view your pipelines.
</Update>

<Update label="October 14, 2021" description="Mobile App Calendar and Appointments" tags={["Feature", "Mobile App"]}>
  **What's new:** View upcoming appointments, accept or decline bookings, and see your daily schedule from the mobile app. Appointment details include contact info and meeting links.

  **Why it matters:** Stay on top of your schedule from anywhere.

  **How to use it:** Open the mobile app and tap **Calendar** to see your appointments.
</Update>

<Update label="October 14, 2021" description="Mobile Push Notifications" tags={["Feature", "Mobile App"]}>
  **What's new:** Receive real-time push notifications for new conversations, appointment bookings, form submissions, and task assignments on your mobile device.

  **Why it matters:** Never miss a lead or booking — instant alerts keep you responsive.

  **How to use it:** Install the HoopAI mobile app and enable notifications when prompted.
</Update>

<Update label="September 30, 2021" description="Mobile Conversations" tags={["Feature", "Mobile App"]}>
  **What's new:** Send and receive SMS, email, and Facebook messages from the mobile app. The full conversation thread is synced in real time with the desktop version.

  **Why it matters:** Respond to leads instantly from your phone without switching to a desktop.

  **How to use it:** Open the mobile app and tap **Conversations** to view and reply to messages.
</Update>

<Update label="September 16, 2021" description="Workflow Wait Until Action" tags={["Feature", "Workflows"]}>
  **What's new:** Add a Wait Until step that pauses the workflow until a specific event occurs — such as a form submission, email open, or appointment booking — rather than waiting for a fixed time period.

  **Why it matters:** Build event-driven automations that respond to real contact behavior.

  **How to use it:** In the workflow builder, add a **Wait** step and select **Wait Until Event**.
</Update>

<Update label="September 16, 2021" description="Voicemail Drop" tags={["Feature", "Conversations"]}>
  **What's new:** Drop a pre-recorded voicemail directly to a contact's voicemail inbox without their phone ringing. Record and save multiple voicemail templates for different scenarios.

  **Why it matters:** Leave personalized voicemails at scale without playing phone tag.

  **How to use it:** Go to **Settings** > **Phone** > **Voicemail Drops** to record templates, then use them from the contact page or in workflows.
</Update>

<Update label="September 2, 2021" description="Call Recording" tags={["Feature", "Conversations"]}>
  **What's new:** Automatically record inbound and outbound calls. Recordings are stored on the contact record and can be played back or downloaded at any time.

  **Why it matters:** Review calls for quality assurance, training, or reference without third-party tools.

  **How to use it:** Enable call recording under **Settings** > **Phone** > **Call Recording**.
</Update>

<Update label="September 2, 2021" description="Call Tracking and Analytics" tags={["Feature", "Conversations"]}>
  **What's new:** Track call metrics including duration, outcome, missed calls, and call volume over time. Assign tracking numbers to campaigns for source attribution.

  **Why it matters:** Understand which campaigns drive phone calls and measure call performance.

  **How to use it:** Go to **Reporting** > **Calls** to view call analytics, or assign tracking numbers under **Settings** > **Phone**.
</Update>

<Update label="August 19, 2021" description="Two-Way SMS Conversations" tags={["Feature", "Conversations"]}>
  **What's new:** Send and receive SMS messages in a threaded conversation view. Contacts can reply directly to your messages, and replies appear instantly in the conversations panel.

  **Why it matters:** Real conversations with leads and clients instead of one-way blasts.

  **How to use it:** Open any contact in **Conversations** and start typing in the SMS tab. Replies appear in real time.
</Update>

<Update label="August 19, 2021" description="SMS Templates" tags={["Feature", "SMS"]}>
  **What's new:** Create and save reusable SMS templates with merge fields for quick personalized messaging. Templates are available in conversations and workflows.

  **Why it matters:** Save time on repetitive messages while keeping them personal.

  **How to use it:** Go to **Marketing** > **Templates** > **SMS** > **Create Template**.
</Update>

<Update label="August 5, 2021" description="Inbound Call Routing" tags={["Feature", "Conversations"]}>
  **What's new:** Route inbound calls to specific team members based on the tracking number dialed, time of day, or round-robin assignment.

  **Why it matters:** Ensure calls reach the right person without manual transfers.

  **How to use it:** Configure call routing under **Settings** > **Phone** > **Inbound Call Routing**.
</Update>

<Update label="August 5, 2021" description="Workflow SMS Action Improvements" tags={["Feature", "Workflows"]}>
  **What's new:** The SMS workflow action now supports MMS (image and file attachments), longer messages with automatic segment splitting, and delivery status tracking.

  **Why it matters:** Richer automated messages with better visibility into delivery success.

  **How to use it:** In the workflow builder, add an SMS action and optionally attach an image or file.
</Update>

<Update label="July 22, 2021" description="Workflow If/Else Branching" tags={["Feature", "Workflows"]}>
  **What's new:** Add conditional branches to workflows based on contact fields, tags, email opens, link clicks, appointment status, and more. Create unlimited nested branches for complex logic.

  **Why it matters:** Build sophisticated automations that adapt to each contact's unique situation.

  **How to use it:** In the workflow builder, add an **If/Else** step and define your conditions.
</Update>

<Update label="July 22, 2021" description="Workflow Timer and Delay Options" tags={["Feature", "Workflows"]}>
  **What's new:** Wait steps now support delays in minutes, hours, days, or until a specific time of day and day of week. Schedule actions to fire during business hours only.

  **Why it matters:** Fine-grained timing control ensures messages arrive when contacts are most likely to engage.

  **How to use it:** Add a **Wait** step in the workflow builder and configure the delay type.
</Update>

<Update label="July 8, 2021" description="Workflow Triggers Expansion" tags={["Feature", "Workflows"]}>
  **What's new:** New workflow triggers added: form submission, survey submission, tag added/removed, invoice paid, membership signup, and custom webhook. All triggers support filter conditions.

  **Why it matters:** Start automations from virtually any event in the platform.

  **How to use it:** In the workflow builder, click **Add Trigger** to see the full list of available triggers.
</Update>

<Update label="July 8, 2021" description="Email Builder Drag-and-Drop" tags={["Feature", "Email Marketing"]}>
  **What's new:** The email builder now features a fully drag-and-drop interface with pre-built content blocks, mobile-responsive layouts, and a library of saved sections.

  **Why it matters:** Create professional emails faster without HTML knowledge.

  **How to use it:** Go to **Marketing** > **Emails** > **Create Email** to use the updated builder.
</Update>

<Update label="June 24, 2021" description="Workflow Action Library" tags={["Feature", "Workflows"]}>
  **What's new:** The workflow builder now includes over 30 actions: send email, send SMS, create task, add to opportunity, update contact field, add/remove tag, assign user, send webhook, internal notification, and more.

  **Why it matters:** A comprehensive action library means you can automate nearly any business process.

  **How to use it:** In the workflow builder, click **Add Action** to browse the full library.
</Update>

<Update label="June 24, 2021" description="Conversation Assignment Rules" tags={["Feature", "Conversations"]}>
  **What's new:** Automatically assign incoming conversations to team members based on round-robin, load balancing, or specific routing rules tied to contact tags or sources.

  **Why it matters:** Distribute leads evenly and ensure fast response times.

  **How to use it:** Go to **Settings** > **Conversations** > **Assignment Rules** to configure.
</Update>

<Update label="June 10, 2021" description="Workflow Wait Steps" tags={["Feature", "Workflows"]}>
  **What's new:** Add timed delays between workflow actions. Wait for a set number of minutes, hours, or days before the next action executes.

  **Why it matters:** Space out follow-ups and nurture sequences at the right pace.

  **How to use it:** In the workflow builder, add a **Wait** step between actions and set the duration.
</Update>

<Update label="June 10, 2021" description="Calendar Reminder Emails" tags={["Feature", "Calendars"]}>
  **What's new:** Send automated reminder emails before appointments at configurable intervals (1 hour, 24 hours, etc.). Reminders include meeting details and a reschedule link.

  **Why it matters:** Reduce no-shows with timely reminders.

  **How to use it:** Go to **Calendars** > edit a calendar > **Notifications** tab to set reminder intervals.
</Update>

<Update label="May 27, 2021" description="Workflow Automation Engine Launch" tags={["Feature", "Workflows"]}>
  **What's new:** The HoopAI platform now includes a visual workflow automation engine. Build multi-step automations with triggers, actions, conditions, and delays using a drag-and-drop canvas.

  **Why it matters:** Automate repetitive tasks — follow-ups, lead nurturing, internal notifications, and data updates — without writing code or using external tools.

  **How to use it:** Go to **Automation** > **Workflows** > **Create Workflow** to open the visual builder.
</Update>

<Update label="May 27, 2021" description="Workflow Templates Library" tags={["Feature", "Workflows"]}>
  **What's new:** Choose from a library of pre-built workflow templates for common use cases: new lead follow-up, appointment reminders, review requests, re-engagement campaigns, and more.

  **Why it matters:** Get started with automation in minutes instead of building from scratch.

  **How to use it:** Go to **Automation** > **Workflows** > **Templates** and select a template to customize.
</Update>

<Update label="May 13, 2021" description="Funnel A/B Split Testing" tags={["Feature", "Funnels"]}>
  **What's new:** Run A/B tests on funnel pages to compare different headlines, layouts, or offers. Traffic is split evenly and conversion rates are tracked per variant.

  **Why it matters:** Data-driven optimization to increase funnel conversion rates.

  **How to use it:** Open a funnel in the editor, click **Split Test** on any page, and create a variant.
</Update>

<Update label="May 13, 2021" description="Contact Merge" tags={["Feature", "Contacts"]}>
  **What's new:** Merge duplicate contacts into a single record. Choose which field values to keep and all conversation history, notes, and activity are combined.

  **Why it matters:** Clean data leads to better automation and reporting accuracy.

  **How to use it:** Open a contact, click the **...** menu > **Merge with another contact** and search for the duplicate.
</Update>

<Update label="April 29, 2021" description="Email Open and Click Tracking" tags={["Feature", "Email Marketing"]}>
  **What's new:** Track email opens and link clicks with detailed analytics. See who opened your emails, which links they clicked, and when — all visible on the contact record and in campaign reports.

  **Why it matters:** Understand engagement to refine messaging and prioritize follow-ups.

  **How to use it:** Open and click tracking is automatic for all emails sent through the platform. View stats under **Marketing** > **Emails** > select a campaign.
</Update>

<Update label="April 29, 2021" description="Calendar Reschedule and Cancel Links" tags={["Feature", "Calendars"]}>
  **What's new:** Confirmation and reminder emails now include one-click reschedule and cancel links. Contacts can change their appointment without contacting you directly.

  **Why it matters:** Self-service rescheduling reduces no-shows and admin overhead.

  **How to use it:** Reschedule and cancel links are included automatically in appointment confirmation emails.
</Update>

<Update label="April 15, 2021" description="Bulk Email Campaigns" tags={["Feature", "Email Marketing"]}>
  **What's new:** Send one-time email campaigns to contact segments. Use the drag-and-drop builder, schedule send times, and track performance with open and click analytics.

  **Why it matters:** Run email marketing campaigns alongside your CRM without a separate email tool.

  **How to use it:** Go to **Marketing** > **Emails** > **Campaigns** > **Create Campaign**.
</Update>

<Update label="April 15, 2021" description="Contact Tags Bulk Management" tags={["Feature", "Contacts"]}>
  **What's new:** Add or remove tags from multiple contacts at once using bulk selection. Filter contacts first, select all matching, and apply tag changes in one action.

  **Why it matters:** Mass-update segments in seconds instead of editing contacts one by one.

  **How to use it:** In **Contacts**, use filters to find your segment, select all, and click **Add/Remove Tags**.
</Update>

<Update label="April 1, 2021" description="Facebook Messenger Integration" tags={["Feature", "Conversations"]}>
  **What's new:** Connect your Facebook Page and manage Messenger conversations directly from the HoopAI inbox. Messages sync in real time alongside SMS and email threads.

  **Why it matters:** One inbox for all channels means faster response times and no missed messages.

  **How to use it:** Go to **Settings** > **Integrations** > **Facebook** and connect your Page.
</Update>

<Update label="April 1, 2021" description="Custom Fields for Contacts" tags={["Feature", "Contacts"]}>
  **What's new:** Create unlimited custom fields (text, number, date, dropdown, checkbox, file upload) for contacts. Custom fields are available in forms, workflows, and email merge tags.

  **Why it matters:** Store any data specific to your business on the contact record.

  **How to use it:** Go to **Settings** > **Custom Fields** > **Add Field**.
</Update>

<Update label="March 18, 2021" description="Funnel Membership Areas" tags={["Feature", "Memberships"]}>
  **What's new:** Create gated membership areas within funnels. Protect content behind login, organize into modules and lessons, and drip content on a schedule.

  **Why it matters:** Deliver courses, training, and exclusive content to paying members without a separate platform.

  **How to use it:** Go to **Sites** > **Memberships** > **Create Membership** and add your content modules.
</Update>

<Update label="March 18, 2021" description="Round-Robin Calendar" tags={["Feature", "Calendars"]}>
  **What's new:** Create round-robin calendars that distribute appointments evenly across team members based on availability. Supports priority weighting and equal distribution modes.

  **Why it matters:** Fair lead distribution and maximized team utilization.

  **How to use it:** Go to **Calendars** > **Create Calendar** > select **Round Robin** type and add team members.
</Update>

<Update label="March 4, 2021" description="Funnel Page SEO Settings" tags={["Feature", "Funnels"]}>
  **What's new:** Customize SEO metadata for each funnel page — title tag, meta description, Open Graph image, and canonical URL. Preview how pages appear in search results.

  **Why it matters:** Better search visibility and professional social sharing previews for your funnels.

  **How to use it:** In the funnel editor, click **Settings** > **SEO** for any page.
</Update>

<Update label="March 4, 2021" description="Contact DND (Do Not Disturb) Settings" tags={["Feature", "Contacts"]}>
  **What's new:** Mark contacts as Do Not Disturb for specific channels — email, SMS, calls, or all communication. DND contacts are automatically excluded from campaigns and workflows.

  **Why it matters:** Respect contact preferences and stay compliant with communication regulations.

  **How to use it:** Open a contact > **Settings** > toggle DND for individual channels.
</Update>

<Update label="February 18, 2021" description="Funnel One-Click Upsell Pages" tags={["Feature", "Funnels"]}>
  **What's new:** Add one-click upsell and downsell pages to your funnel flow. After an initial purchase, contacts can accept additional offers without re-entering payment information.

  **Why it matters:** Increase average order value with frictionless post-purchase offers.

  **How to use it:** In the funnel builder, add an **Upsell** step after your order form page.
</Update>

<Update label="February 18, 2021" description="Contact Notes and Tasks" tags={["Feature", "Contacts"]}>
  **What's new:** Add notes and create tasks on any contact record. Tasks can be assigned to team members with due dates and appear in a unified task list.

  **Why it matters:** Keep track of follow-ups and context without leaving the contact record.

  **How to use it:** Open a contact and use the **Notes** and **Tasks** tabs on the detail page.
</Update>

<Update label="February 4, 2021" description="Funnel Order Form Two-Step" tags={["Feature", "Funnels"]}>
  **What's new:** Create two-step order forms that capture contact information before payment details. Leads who abandon at step two can be followed up automatically via workflows.

  **Why it matters:** Capture partial leads even when they do not complete the purchase.

  **How to use it:** In the funnel editor, add an **Order Form** element and select **Two-Step** layout.
</Update>

<Update label="February 4, 2021" description="Reputation Management Launch" tags={["Feature", "Reputation"]}>
  **What's new:** Monitor and manage your online reviews from Google and Facebook in one dashboard. Send review request campaigns via email and SMS to recent customers.

  **Why it matters:** Build your online reputation systematically and respond to reviews quickly.

  **How to use it:** Go to **Marketing** > **Reputation** to connect your review profiles and start sending requests.
</Update>

<Update label="January 21, 2021" description="Calendar Booking System" tags={["Feature", "Calendars"]}>
  **What's new:** Create shareable booking calendars with customizable availability, buffer times, and appointment durations. Contacts book directly from a link or embedded widget.

  **Why it matters:** Eliminate scheduling back-and-forth — contacts self-book based on your real availability.

  **How to use it:** Go to **Calendars** > **Create Calendar**, set your availability, and share the booking link.
</Update>

<Update label="January 21, 2021" description="Dashboard Overview Widgets" tags={["Feature", "Dashboard"]}>
  **What's new:** The main dashboard now displays key metrics at a glance: new contacts, appointments booked, pipeline value, conversation volume, and task completion rates in customizable widgets.

  **Why it matters:** See your business health at a glance without navigating to individual reports.

  **How to use it:** Visit the **Dashboard** — widgets are displayed automatically based on your account data.
</Update>

<Update label="January 7, 2021" description="Funnel Builder Improvements" tags={["Feature", "Funnels"]}>
  **What's new:** The funnel page editor now includes new elements: countdown timers, pricing tables, FAQ accordions, and video embeds. Page load speed has also been improved with lazy loading.

  **Why it matters:** More conversion-focused elements and faster pages mean better funnel performance.

  **How to use it:** Open any funnel page in the editor to access the new elements in the sidebar.
</Update>

<Update label="January 7, 2021" description="Email Unsubscribe Management" tags={["Feature", "Email Marketing"]}>
  **What's new:** Unsubscribe links are now automatically included in all marketing emails. Unsubscribed contacts are flagged and excluded from future campaigns automatically.

  **Why it matters:** Stay compliant with email regulations and maintain list health.

  **How to use it:** Automatic — unsubscribe links are added to all marketing email footers.
</Update>
