💁♀️ Achievable
- Provide better personalized marketing and sales services
- Brands can display different Rich Menus to specific contacts based on Tags or Segments.
Setup Process
- Go to the Rich Menu module and click [Add Rich Menu]
- Enter the name of the Rich Menu
- Select "Custom Menu"
- Choose personalization conditions (choose one):
- Contacts with specific tags
- If tagged with the tag, this Rich Menu will automatically be displayed
- Bound Contacts
- Bound Contacts will automatically see this Rich Menu
- Contacts with specific tags and bound
- If the Contact is tagged and bound, this Rich Menu will automatically be displayed
-
Contacts from a specific Segment
-
Contacts belonging to the selected Segment will see this Rich Menu.
⚠️ Segment-based Rich Menu mechanism:
Non-real-time update (two-stage daily schedule, times in UTC+8):
- 02:00–05:40: The system recalculates Segment membership (one cycle every 20 minutes).
- 07:00: The latest Segment list is applied to the Rich Menu, updating what each contact sees.
As a result, the switch from "qualifies → no longer qualifies" (or vice versa) to a Rich Menu change can take up to about 25 hours. If you need "the menu to switch immediately when a user takes an action," please continue using the "Tag" trigger mechanism. For "long-term audience management (e.g., VIPs, dormant customers)", we recommend the "Segment" mechanism.
📌 Exception: Segments built from "UID imported lists" or "phone number imported lists" are not automatically recalculated daily; they are only refreshed when the list file is re-uploaded. If your Segment requires daily refresh, please switch to an "event-based" or "attribute-based" Segment instead.
-
- Contacts with specific tags
⚠️ It is recommended to use a separate tag for activity-based menus to avoid interfering with persistent menu logic
- Click Next to proceed to the menu settings screen:
- Set images, text lists, and interactive blocks (Send message, open website, switch page, make a call)
- Recommended image sizes:
- Large: 2500 x 1686 px
- Small: 2500 x 843 px
- Image formats: JPG, JPEG, PNG (Transparent backgrounds are not supported)
- Save Settings:
- Save as Draft: Can be edited later
- Schedule: Choose permanent or custom start and end times
- After completion, you can check the status in the Rich Menu list:
- Paused: Can be edited or rescheduled
- Scheduled: Not yet activated
- Running: Currently active
- Ended: Menu is over, can be copied or deleted
- If "Error" status appears, please create a new menu and use the "Help" feature in the bottom right to contact support
Rich Menu Priority Order:
The following explains the priority based on Contact events and Brand manual updates to Rich Menus.
Contact Event Updates: Contact's [Tag / Untag] events & Contact's [Bind / Unbind] events
Brand Updates Rich Menus: Enable / Disable Tag Rich Menus & Enable / Disable Bound Rich Menus
Display logic for "Segments": When a user belongs to multiple Segments simultaneously, and these Segments are bound to different Rich Menus, the system will prioritize displaying the "Last Edited and Published" Rich Menu.
⚠️ Tip: If you want a specific Segment menu to be displayed with priority, simply re-edit and save that menu to make its update time the most recent.
🔀 Segment menu vs. Tag / Bound menu priority
Because Segment menus are applied as a daily batch at 07:00 (UTC+8), while Tag / Bound menus are triggered in real time by events, the two mechanisms differ. The menu a contact ultimately sees is determined by the most recent triggering event:
| Event | Behavior |
|---|---|
| Tag event (tag added) | Immediately switches to the matching [Tag with Bound] or [Tag] Rich Menu, overriding the Segment menu. |
| Bind event | Immediately switches to the [Bound] Rich Menu, overriding the Segment menu. |
| Daily 07:00 Segment batch | Unconditionally switches contacts in the Segment list to the Segment menu, overriding any existing Tag / Bound menu. |
⚠️ Therefore, if you use both Tag / Bound menus and Segment menus, avoid overlapping target audiences; otherwise the menu a user sees will keep flipping back and forth between "event-triggered" and "daily 07:00 batch."
Recommended separation:
- Real-time interaction scenarios (a user just clicked, just bound, or just got a tag, and should see the matching menu) → use Tag / Bound menus.
- Long-term audience management (VIPs, dormant customers, lifecycle segments) → use Segment menus, and make sure that audience is not also covered by a Tag / Bound menu.
Contact Event: Tag / Untag
Tag Event (Add Tag)
When a user is tagged, MAAC will prioritize checking if the user is a Bound Contact.
-
For Bound Contacts:
If a Tag with Bound Rich Menu exists, that menu will be shown.
-
If no Tag with Bound Rich Menu, the system checks for a Tag Rich Menu:
If exists, the most recently created Tag Rich Menu will be shown.
If not, no update will be made.
🚨 Priority:
If the Contact meets both "Tag" and "Bind" conditions, the system will prioritize displaying the Tag with Bound Rich Menu and select the most recently created menu.
When a contact has multiple tags, the system will display the Rich Menu based on the most recently added tag.
Untag Event (Remove Tag)
Does Not Switch Menu: When the contact removes a tag, the system will not automatically switch the Rich Menu and will retain the current displayed menu until another event (such as a Bind or Tag change) triggers a menu update.
Tag / Untag Status Table Summary
| Event | Original Contact Status (Before New Tag Event Trigger) | New Tag Event Triggered Contact Status | Final Displayed Rich Menu |
|---|---|---|---|
| Tag | Tagged and Bound | Tagged and Bound |
Priority Order: 1. Tag with Bound Rich Menu 2. Tag Rich Menu 3. No Update (if no corresponding tag menu is set, the menu will not be updated) |
| Tag | Tagged and Unbound | Tagged and Bound |
Priority Order: 1. Tag Rich Menu 2. No Update (if no corresponding tag menu is set, the menu will not be updated) |
| Tag | Untagged and Bound | Tagged and Bound |
Priority Order: 1. Tag with Bound Rich Menu 2. Tag Rich Menu 3. No Update (if no corresponding tag menu is set, the menu will not be updated) |
| Tag | Untagged and Unbound | Tagged and Unbound |
Priority Order: 1. Tag Rich Menu 2. No Update (if no corresponding tag menu is set, the menu will not be updated) |
Contact Event: Bind / Unbind
Bind Event Logic
The system checks if the user is bound (Customer_id updated with a value).
If there is a matching Bound Contact Rich Menu, it will be shown directly.
-
If there is no matching Bound Contact Rich Menu:
No update is made, and the original menu remains.
If the original menu was deleted or paused, it will revert to the default Rich Menu (LINE native mechanism).
🚨 Priority Order:
Regardless of whether it is a Tag Rich Menu, Bound Rich Menu, or Default Menu, as long as a Bind event is triggered, the Bound Rich Menu will be prioritized.
Unbind Event (Remove Bind)
When a contact is unbound, the system checks the current Rich Menu type and determines how to handle it:
Bound Rich Menu or Tag with Bound Rich Menu: The system will unbind and revert the user to the default Rich Menu (LINE native mechanism).
Unbound Contact: If no other special settings are applied, the system will display the default Rich Menu.
Bind / Unbind Status Table Summary
| Event | Original User Status | Contact Update Status | Final Displayed Rich Menu |
|---|---|---|---|
| Bind | Tagged and Bound | Tagged and Bound | Bound Rich Menu |
| Bind | Tagged and Unbound | Tagged and Bound | Bound Rich Menu |
| Bind | Untagged and Bound | Untagged and Bound | Bound Rich Menu |
| Bind | Untagged and Unbound | Untagged and Bound | Bound Rich Menu |
Unbind Event (Remove Bind)
When the contact is unbound, the system checks the current Rich Menu type and determines how to handle it:
-
Bound Rich Menu or Tag with Bound Rich Menu:
Situation 1: If the contact was bound to a Tag Rich Menu, it will retain the Tag Rich Menu.
Situation 2: If the contact was bound to a Bound Rich Menu, it will revert to the default Rich Menu.
Unbound Contact: If no special settings exist, the system will display the default Rich Menu.
Brand Updates Rich Menu
Enable Tag Rich Menu
Find all Contacts with the specific tag and update their Rich Menus. If the contact is tagged, the corresponding Tag Rich Menu will be displayed.
Disable Tag Rich Menu
If the contact has not left the chatroom, they will continue to see the disabled Rich Menu. If they re-enter the chatroom, the default Rich Menu will appear.
Enable / Disable Bound Rich Menu
Find all Bound Contacts and update their existing Rich Menus accordingly.
Enable / Disable Bound Rich Menu Status Table
| Event | Contact Status | Final Displayed RM |
|---|---|---|
| Enable Bound Rich Menu | Tagged and Bound | Bound Rich Menu |
| Enable Bound Rich Menu | Tagged and Unbound | No Change, Display Existing Rich Menu |
| Enable Bound Rich Menu | Untagged and Bound | Bound Rich Menu |
| Enable Bound Rich Menu | Untagged and Unbound | No Change, Display Existing Rich Menu |
Enable / Disable Tag with Bound Rich Menu
| Event | Original User Status | Final Displayed RM |
|---|---|---|
| Enable Tag with Bound Rich Menu | Tagged and Bound | Tag with Bound Rich Menu |
| Enable Tag with Bound Rich Menu | Tagged and Unbound | No Change, Display Existing Rich Menu |
| Enable Tag with Bound Rich Menu | Untagged and Bound | No Change, Display Existing Rich Menu |
| Enable Tag with Bound Rich Menu | Untagged and Unbound | No Change, Display Existing Rich Menu |
Automatic Rich Menu Switching Mechanism Summary
Tag Events and Bind Events are independent events that update the Rich Menu based on the contact's tag or binding status.
When multiple Rich Menus of the same type meet the conditions, the system will choose the most recently created menu based on creation time.
Untag and Unbind Events do not immediately trigger menu switching, unless other conditions (such as a new tag or bind event) are triggered.
Brands can manually enable or disable Tag Rich Menus, but after disabling, the contact must re-enter the chatroom to see the default Rich Menu.
Segment Rich Menus are applied as a daily batch (Segment recalculation 02:00–05:40, applied to menus at 07:00, UTC+8) and are not real-time; in the worst case, propagation can take up to about 25 hours. Statically imported lists (UID / phone number) are not included in the daily recalculation.
Events That Trigger Automatic Rich Menu Switching
| Trigger Event | Affected Contact | Rich Menu Type | Description |
|---|---|---|---|
| User Bind | Single Contact | Bound Rich Menu | Forced link to Bound Rich Menu. |
| User Gains Tag | Single or Multiple Contacts | Tag Rich Menu / Tag with Bound Rich Menu | Choose Rich Menu based on priority: 1. Tag with Bound Rich Menu 2. Tag Rich Menu If multiple menus of the same type, show the most recently created one. |
| Enable Bound Menu | All Bound Contacts | Bound Rich Menu | Link Bound Rich Menu (BIND RM), overwriting all per-user Rich Menus. |
| Enable Tag Rich Menu | All Tagged Contacts | Tag Rich Menu | Link Tag Rich Menu. |
| Enable Tag with Bound Rich Menu | Contacts with Tag and Bound | Tag with Bound Rich Menu | Link Tag with Bound Rich Menu. |
| Daily schedule (recalculation 02:00–05:40, application 07:00, UTC+8) | Contacts in the Segment | Segment Rich Menu | Automatically applies the latest Segment list to the Rich Menu; when a contact qualifies for multiple Segments at once, the most recently edited and published menu is shown. Overrides any existing Tag / Bound menu. |
| Enable Segment Rich Menu | Contacts in the Segment | Segment Rich Menu | Takes effect only at the next daily schedule (up to about 25 hours), not in real time. Statically imported lists (UID / phone number) are not included in the daily recalculation. |