Build custom in-app Chat or make use of third-party Chat apps (Messenger, WhatsApp, etc…)

I'm interested about your opinions on the subject.

PRE-NOTE

I am not talking about using a chat SaaS (Sendbird, Pusher, etc...) BUT making use of existing, installed, chat apps.

1- IN-APP

PROs

  1. App engagement/retention
  2. Less cluttered UI (more dedicated to app use case)
  3. Custom functionalities catered to app use case
  4. Some users don't want to share their Messenger/WhatsApp ID (??)

CONs

  1. Dev time/cost
  2. Have to match user "chat expectations" (top notch UX) – Hard to match
  3. "Yet another chat app" to handle

2- THIRD-PARTY

PROs

  1. User is already used to it
  2. Top of the class user experience (most of the time, LINE, cough, cough...)
  3. User can choose what chat app to use
  4. User more likely to get/see the notifications – Especially on Android with custom vendor/user battery settings
  5. Can use third-party chat bot for onboarding / custom focused notifications (with "Actions")

CONs

  1. User leaves app
  2. Cannot build custom buttons/functionalities in chat
  3. "First message" might be lost (when user adds a new contact) – Some chat apps treat these "first messages" as almost SPAM (Messenger so called "requests")
  4. Cannot "bridge" users if they don't use the same chat app – Could actually bridge through a bot
  5. Some users don't use chat apps (???????????????????????)
  6. Cannot create in-app community chat group – Although could create them manually or through chat API if possible