In-app messaging refers to timely, relevant, and contextual notifications your users see while interacting with your product or app. These messages can help you encourage and engage users, match their workflow inside your product, and offer the right information at the right time. Common types of in-app messages include product tours, customizable widgets, chatbots, tooltips, modals, and in-app surveys. The most common use cases are improving onboarding flows, offering self-serve support, and getting relevant user feedback. In-app messaging best practices involve copy best practices, design best practices, signal-to-noise best practices, adding marginal value, and creating ideal customer profiles or user personas.