Msg91 Help Doc
Email

Email

Helpdocs for email services

When utilising email services to communicate with your audience, it's essential to follow the warm-up process diligently. Warm-up is a strategic method to gradually increase your email sending volume, ensuring a smooth and successful delivery to your recipients.


Why is Warm-Up Necessary?

Sending a large number of emails abruptly, without a proper warm-up, can trigger spam filters on recipient clients such as Gmail or Outlook. These email providers monitor the sending behavior of IP addresses and domains. If they detect a sudden and high volume of emails, they may categorize your emails as spam or may blacklist your domain, leading to potential delivery issues.


How to Conduct Warm-Up:

To optimize your email deliverability, we recommend starting with a conservative email volume and gradually increasing it over a specified period. Here's a suggested approach:


Warm up process email cycle

Day 1 – Send to 500
➡️ Start slow. Only target users who recently engaged with your services (opened/clicked).
Goal: Build trust with mailbox providers.

Day 2 – Send to 1,000
➡️ Double your volume, but monitor bounce and complaint rates.
Goal: Prove your list is clean and responsive.

Day 3 – Send to 2,000
➡️ Increase only if performance from Day 1–2 was strong.
Goal: Avoid hitting spam traps.

Day 4 – Send to 3,000
➡️ Continue increasing, but ensure your open rate stays above 10%.
Goal: Keep engagement steady.

Day 5 – Send to 5,000
➡️ Still prioritize recent or active users.
Goal: Avoid sudden dips in performance.

Day 6 – Send to 7,000
➡️ Do not send to cold or new contacts yet.
Goal: Maintain consistency.

Day 7 – Send to 10,000
➡️ Look beyond just delivery rates - check how many emails were delivered vs failed.
Goal: Ensure real visibility.

Day 8 – Send to 12,000
➡️ Clean your list, remove any hard bounces or invalid emails.
Goal: Prevent damage to sender score.

Day 9 – Send to 14,000
➡️ Spam complaints should stay below 0.1%.
Goal: Show mailbox providers your emails are wanted.

Day 10 – Send to 15,000
➡️ You can slowly reintroduce older contacts if engagement is solid.
Goal: Test cautiously.

Day 11 – Send to 12,000
➡️ Slight pullback for better deliverability
Goal: Let your reputation recover.

Day 12 – Send to 8,000
➡️ Let mailbox providers stabilize your sending behavior.
Goal: Build long-term trust.

Day 13 – Send to 6,000
➡️ Don’t spike volumes. Stay consistent with the warm-up curve.
Goal: Avoid filters and throttling.

Day 14 – Send to 5,500
➡️ Review performance. Decide whether to scale up or pause.
Goal: Plan for the next phase of your email strategy.

The dip in volume on Day 12–14 in a warm-up plan is a strategic cooldown, and here's Why We Reduce Volume Around Day 12

Avoid Triggering Spam Filters - If you keep increasing volume non-stop for 14 days, mailbox providers may flag it as "suspicious behavior" — especially from a new domain. A sudden drop, pause, or dip simulates more natural human activity (e.g. campaign cycles, weekends, or a controlled test).

Let the IP and Domain Reputation Stabilize - After 80K emails, mailbox providers need time to analyze your metrics: spam complaints, bounce rates, opens, click-throughs, unsubscribes.The dip acts like a “buffer period” for that analysis to settle in.

Prevent Overheating the IP Reputation - If any minor complaints or bounces start creeping in during high-volume days, continuing to increase can burn the domain/IP reputation. Pulling back early lets you course-correct.

Most legitimate senders don’t send more and more every single day. A healthy pattern looks like: increase → cooldown → new batch later.

If you keep increasing to the end without pause, ESPs may think:

:triangular_flag_on_post:


You're a bulk sender spamming aggressively

:triangular_flag_on_post:

You're not following best practices

Your domain could be linked to spam traps

:triangular_flag_on_post:

You're faking trust to reach more inboxes fast

Once you complete the warm-up cycle, you can switch to sending in campaigns (not bulk blasts), and include delays, frequency and A/B Testing to keep performance high.

Gradual Increase (Even After Warm-Up) - Start with 20K–30K emails per day for a couple of days and then increase
gradually.Day

1-2: 20K
Day 3-4: 40K
Day 5-6: 50K
Day 7: 75K
Day 8 onwards: 100K if everything looks good (engagement rates, inbox placement).

Best Approach:

  1. Week 1 Post-Warm-Up: Slowly scale from 20K–50K per day.

  2. Week 2–4 Post-Warm-Up: Gradually push up to 100K per day, but monitor metrics and scale cautiously.

  3. Ongoing: Continue optimizing your email list, monitor engagement, and review metrics to ensure that you’re staying within best practices.

Benefits of Warm-Up:

  1. Improved Deliverability: Gradual increases in email volume help establish a positive sending reputation of your domain and IP, reducing the likelihood of emails being marked as spam.

  2. Enhanced Engagement: ISPs (Internet Service Providers) are more likely to recognize your emails as legitimate, leading to improved open and click-through rates.

  3. Avoiding Spam Folders: Warm-up minimizes the risk of your emails ending up in the spam folder, ensuring they reach your audience's primary inbox.


Key Takeaway:


Taking the time to perform an effective warm-up is an investment in the success of your email delivery. By following this process, you maximize the chances of your emails being delivered to the intended recipients' inboxes.

Warm Up in Email Sending
Apr 24, 2025

By configuring webhooks, you can automate the process of receiving important updates directly to your specified URL endpoint, ensuring you always stay informed about your email activities. This guide covers three main notification types: Delivery Report, Incoming Mails, and Domain Status.


Getting Started


Before you begin, ensure you have the necessary permissions to manage webhooks and access to the MSG91 dashboard.


What You Will Need:

- Access to the MSG91 dashboard

- A valid post URL endpoint where you wish to receive notifications


Configuring Your Webhook


1. Delivery Report


Purpose: Receive real-time notifications about the delivery status of your emails.


Configuration Steps:

1. Navigate to the email section on your MSG91 dashboard.

2. Select the "Webhook" option.

3. Under "Delivery Report," enter your webhook URL where you wish to receive delivery status notifications.


2. Incoming Mails


Purpose: Get data of incoming emails directly to your specified webhook URL.


Configuration Steps:

1. In the "Webhook" section, locate the "Incoming Mails" option.

2. Input the webhook URL where you want to receive data about incoming emails.


3. Domain Status


Purpose: Monitor changes in your domain status and receive updates if your domain's status fluctuates.


Configuration Steps:

1. Within the "Webhook" settings, find the "Domain Status" area.

2. Provide the webhook URL to receive notifications regarding your domain status.

For SPF, DKIM, MX and Status (of domain) : Value 2 is verified; 1 is unverified.

For Domain Enabled Status : Value 1 is enabled; 0 is disabled. 


Additional Settings

Headers:

- Optional: You may specify headers to pass along with the webhook URL according to your technical requirements.

- If you do not have specific needs, you can leave the headers section blank.


Body:

- To view the payload that will be sent to your webhook, click on the "Body" section. This allows you to see and prepare for the data structure you will receive.


HTTP Response Codes

Understanding the HTTP response codes you might encounter while using webhooks is essential for troubleshooting and ensuring smooth operation. Here are the common codes and their meanings:

200 OK
401 Unauthorized
403 Forbidden
422 Invalid request Body
500 Internal server error
504 Gateway timeout

Conclusion

Setting up webhooks in MSG91 for email services is a straightforward process that empowers you with real-time data about your email communications. By following this guide, you can seamlessly integrate these notifications into your systems, enhancing your email management capabilities.

For further assistance or questions, please refer to our FAQ section or contact our support team.

Webhook for Email Activities
Nov 14, 2024

This feature is used to connect your existing email service provider (Gmail & Outlook) to your MSG91 account and use the same to send emails. 


How to set up email connections?


1. Click on Email on the home screen


        

​2. Click on connections from the left menu pane.


        

​3.You’ll get the option to choose from Gmail or Outlook. Choose one of the following option which you want to                 use and click continue (You’ll be redirected to the service provider URL for login) 



4. Provide the login credentials of your existing email or create a new account and click continue


        

​5. It’ll take you to the page where you can check the permissions for MSG91 and also the privacy policy, if you          are ok with that click on continue. Once done you can see the account under Connection in your email              dashboard and you will be able to send emails from it.



Note : The email limits and restrictions will be as per your email service provider.


6. If you want to add another account you can click on the Connect button on the top left side of the screen and continue from step 3 to step 5



7. If you want to delete the any existing connection then just hover over the connection that you want to delete and click the delete button


8. In order to send emails using API for connections, kindly use the same cURL as Send Email API and replace "domain" with "integration_id" which can be found under the connection tab. Also "from field" is not required if you are using connections as the from email will be the email as per connection.



Email Connections
Nov 9, 2024

MX (Mail Exchange) records are a crucial part of email communication, as they ensure that your domain can send and receive emails properly. If your MX records are not verified, you may encounter several issues that can negatively affect your email deliverability and domain reputation. Below are some potential problems that can occur if your MX records are not set up or verified:

  1. Inability to Receive Emails
    Without MX records, your domain won’t be able to receive incoming emails. If you’re not allowing incoming mail, recipient mail servers will notice this issue, which could harm your domain’s reputation. This could signal to others that you’re not supporting two-way communication, which might raise concerns about the legitimacy of your domain.

  2. Undelivered Bounce-Back Messages
    If users are unable to receive emails due to their own firewall settings or if the emails are being flagged as spam, the recipient's mail server will typically attempt to send a bounce-back message. However, without proper MX records, this bounce-back message will not be delivered to you. This can further impact your domain’s reputation, as recipient servers like Google or Hotmail may view this as an email misconfiguration and could flag your domain as unreliable.

  3. Risk of Being Flagged by Spam Filters
    Spam filters from major email services (like Google, Hotmail, and Yahoo) rely on the presence of valid MX records to verify that a domain is properly configured for email communication. Without verified MX records, your domain may be flagged as suspicious, increasing the chances of being blacklisted. This could severely hinder your ability to send legitimate emails, leading to delivery failures and decreased email engagement.

  4. Negative Impact on Deliverability
    Email service providers (ESPs) use MX records to route email traffic. If they cannot find valid MX records for your domain, they may reject your emails outright. Even if your email is not flagged as spam, the absence of verified MX records makes it difficult for ESPs to ensure that your domain is trustworthy. This can lead to a lower inbox placement rate and higher chances of your emails being marked as spam.

How to Resolve These Issues

To avoid these problems, it’s essential to verify your MX records. Here’s the recommended solution:

  • Verify MX Records for Your Sub-domain: By verifying the MX records for your sub-domain, you’ll allow proper routing of incoming and outgoing emails for that sub-domain without needing to verify the main domain directly.

    This verification process ensures that your domain is configured correctly for email communications, which helps maintain your reputation, improves email deliverability, and ensures that emails can be sent and received smoothly.

Why MX Records are mandatory
Feb 4, 2025

Now you can easily view and reply to all email responses from a single dashboard. Explore Hello Inbox to efficiently manage all replies and respond promptly. To get started, simply click on Hello.

After clicking on Hello, select All Inboxes

Screenshot 2025-02-03 at 4.50.27 PM.png


After clicking on all inboxes, Then, simply click on the Create Inbox button located at the top-right corner

Screenshot 2025-02-03 at 4.49.36 PM.png

After clicking on create inbox, Select Email Inbox to integrate your Msg91 email account

Screenshot 2025-02-03 at 4.53.12 PM.png

Select MSG91 and click on Create Now

Screenshot 2025-02-03 at 4.55.08 PM.png

After selecting the MSG91 Inbox, you’ll need to fill in the following required fields:

Inbox Name: This is how the inbox will be displayed in Hello, allowing you to view all responses. Select Domain: Choose the configured domain you have used in your MSG91 email service.
Email : Add the same email ID you used for sending emails through your MSG91 account.
From Name: Set the name that will appear to users when responses are triggered

After filling in the required fields, click on Next to proceed.

Screenshot 2025-02-03 at 4.58.10 PM.png


In the next field, set the permissions for handling email responses. Select the agent or team based on your Hello Inbox configuration, or click on 'Invite an Agent' or 'Add a Team' as needed. Once done, click on Save & Next to proceed

Screenshot 2025-02-03 at 5.12.46 PM.png

Next, you'll see the forwarding option. Keep the settings as they are and click Next

Screenshot 2025-02-03 at 5.15.15 PM.png

In the next field, you'll find the configuration option. Add your signature so it appears in the email replies. Enable Show Mail Thread to view the entire email thread in Hello. The Undo Email option allows you to undo an email after sending, set the duration and click Save.

Screenshot 2025-02-03 at 5.20.06 PM.png

After clicking on Save, your integrated Email Inbox will appear in the "Hello All Inboxes" section and below the filters, your configured Email Inbox will be displayed. After selecting the Email Inbox, you can review all received email responses and respond accordingly.

Screenshot 2025-02-03 at 5.22.48 PM.png

Next, to complete the setup, go back to your MSG91 email service, click on Webhook, and add the provided URL - https://api.phone91.com/receive-mail/ in the Incoming Email Post section & click save to start receiving email responses in Hello.

Screenshot 2025-02-03 at 5.28.13 PM.png

By following these simple steps, you can seamlessly manage and respond to all your email replies instantly from a single dashboard using the same email ID in Hello.

You can also check how to use Hello to manage and reply to all your customer responses effectively - https://video-faq.viasocket.com/demo/cm4s55g6y01uqql5jashah58w

How to View and Respond to All Email Replies in One Dashboard with Hello Inbox
Feb 4, 2025

Gmail Markup enhances your emails by allowing recipients to take quick actions directly from their Gmail inbox. With this feature, users can interact with emails - such as checking into a flight, confirming an event, or tracking an order - without opening the email fully or clicking external links.

Example Use Case:

For an event reservation email, Gmail Markup can display an "Add to Calendar" button to allow users to add the event to their calendar, and a "Directions" button to get directions to the event directly from their inbox.

Screenshot 2025-04-28 at 2.13.17 PM.png

Testing Gmail Markup

If you want to test before whitelisting your email ID, follow these simple steps:

  1. Visit script.google.com

  2. After visiting, select 'New Project' from the left side.

  3. You will see a file named Code.gs on the left side.

  4. Replace the content of Code.gs with the following code.

    /**
     * Send an email with schemas in order to test email markup.
     */
    function testSchemas() {
      try {
        const htmlBody = HtmlService.createHtmlOutputFromFile('mail_template').getContent();
    
        MailApp.sendEmail({
          to: Session.getActiveUser().getEmail(),
          subject: 'Test Email markup - ' + new Date(),
          htmlBody: htmlBody
        });
      } catch (err) {
        console.log(err.message);
      }
    }
  5. Click on Save

  6. Next, click on the left top side Files (+) icon, select HTML, and name the file mail_template to match the parameter used in the JavaScript above.

  7. Replace the content of HTML with the following code & Click on Save

    <!--
     Copyright 2022 Google LLC
    
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at
    
          http://www.apache.org/licenses/LICENSE-2.0
    
     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
    -->
    
    <html>
      <head>
      <script type="application/ld+json">
    {
      "@context": "http://schema.org",
      "@type": "FlightReservation",
      "reservationNumber": "RXJ34P",
      "reservationStatus": "http://schema.org/Confirmed",
      "underName": {
        "@type": "Person",
        "name": "Eva Green"
      },
      "reservationFor": {
        "@type": "Flight",
        "flightNumber": "110",
        "airline": {
          "@type": "Airline",
          "name": "United",
          "iataCode": "UA"
        },
        "departureAirport": {
          "@type": "Airport",
          "name": "San Francisco Airport",
          "iataCode": "SFO"
        },
        "departureTime": "2027-03-04T20:15:00-08:00",
        "arrivalAirport": {
          "@type": "Airport",
          "name": "John F. Kennedy International Airport",
          "iataCode": "JFK"
        },
        "arrivalTime": "2027-03-05T06:30:00-05:00"
      }
    }
    </script>
    

    To test the script:

    1. Select the tab for Code.gs

    2. Make sure the function testSchemas is selected in the Select function dropdown menu.

    3. Click Run in the Apps Script development environment.To test the script:

      Screenshot 2025-04-28 at 3.34.03 PM.png


The first time you run the script, you'll be asked to grant authorization.
Once you grant the authorization and the script runs successfully, check your inbox for an email sent from yourself — similar to the following screenshot:


Screenshot 2025-04-28 at 3.37.21 PM.png


Types of Actions & Interactive Cards

Gmail Markup supports a variety of actions and interactive cards, allowing different types of user interactions such as:

  • Flight check-ins

  • Event confirmations

  • Order tracking

  • And more

For a full list of supported actions, refer to the Gmail Markup Documentation

To test different cards, such as event confirmation or order tracking, follow these steps:

  1. Copy the necessary code (either in JSON-LD or Microdata format).

  2. Paste the code into the script section of the HTML (from the <head> tag to the bottom).

  3. Run the script to test the implementation and ensure it works seamlessly.

If you're having trouble running a Gmail markup template, add the code to the Email Markup Tester to validate the structured data

Whitelisting Process


To enable Gmail Markup actions in your emails, Google needs to whitelist your email address.

How to get whitelisted:
Follow the steps in this link to submit your email for whitelisting.

Once your email address is whitelisted, interactive features (such as buttons and actions) will be visible in your emails. Copy the required code in JSON-LD (recommended) and paste it into the HTML & Text Editor of your MSG91 email account to run your interactive email campaign smoothly.

By following this simple step, you can easily design your interactive email template using Gmail markup.

What is Gmail Markup and How to Use It?
Apr 28, 2025

What is IntelliSend?

IntelliSend is a smart email-sending feature powered by artificial intelligence that generates dynamic variations of your existing email template. When enabled, it automatically creates double the variations and sends them at 2x scale - helping you maximize engagement without any extra effort.

Note: You won’t be able to preview the AI-generated variations, but your recipients will receive optimized, personalized versions based on your original template.

How It Works -

Initial Sending

The first batch (e.g., 100 emails) is sent using your currently active template.

IntelliSend follows a version tree logic where every version generates two new AI-powered variations, and the send volume doubles at each step. Here's how it works:

Screenshot 2025-04-23 at 12.05.08 PM.png


  1. Initial Batch:

    • Send 100 emails using your original active template.

  2. First AI Layer (A1 & A2):

    • AI generates 2 new versions (A1 & A2)

    • Sends 200 emails using A1

    • Sends 200 emails using A2

  3. Second AI Layer (B1 & B2 from A1, and B1 & B2 from A2):

    • A1 generates B1 and B2 → Sends 400 emails each

    • A2 generates B1 and B2 → Sends 400 emails each

  4. Third AI Layer (C1 & C2 from B1 and so on):

    • Each B-version (B1, B2...) generates its own C1 and C2

    • Each sends 800 emails per version

This doubling pattern continues, with every AI version creating two more, aiming to find the best-performing variants as volume increases.

How to Enable IntelliSend -

  1. Go to the Templates section

  2. Find the template you want to use

  3. Click the three-dot menu next to it

  4. Toggle the IntelliSend AI switch to enable


What Happens Behind the Scenes

  • All variables (e.g., {{user_name}}) are preserved.

  • New versions are generated and sent automatically

  • No manual intervention is required after enabling

  • If IntelliSend is turned off, emails will be sent from your manually selected active version

    By following this, you can unlock the full power of IntelliSend and let AI do the heavy lifting for smarter, scalable email campaigns.

IntelliSend – AI-Powered Smart Email Sending
Apr 23, 2025
Prev