Common questions about MxChat. Updated daily based on real customer questions. If you can’t find an answer here, check the documentation or open the chatbot on this page.
Getting started
What privacy disclaimer should I add to my site if I use MxChat?
MxChat ships with a built-in privacy notice you can enable at MxChat → Settings → Privacy Notice: toggle it on and edit the textarea (default: “By chatting, you agree to our privacy policy.”). Update your own privacy policy page to disclose three things grounded in how MxChat actually behaves: (1) chat transcripts are stored in your WordPress database (table {prefix}mxchat_transcripts), not on MxChat servers; (2) chat messages are sent to whichever LLM provider you configured (OpenAI, Anthropic, Google, etc.) for response generation, subject to that provider’s terms; (3) the IP address and page URL of each chat are recorded for analytics. Linking your standard privacy page from the Privacy Notice setting is enough — no special MxChat-only clause is required. Available in MxChat core (the free plugin).
How do I activate my MxChat Pro license?
Go to MxChat → License in your WordPress admin and enter both your license key and the exact email address you used to buy the license. Activation calls the WooCommerce Software API at mxchat.ai with your domain, your key, and that email; if any of the three don’t match the original order, the response is “Invalid license”. If you mistyped the purchase email at checkout, the only fix is to email [email protected] with the order number so it can be corrected on the order. Available in MxChat core (the free plugin); the License screen is only shown after a Pro/Agency add-on is installed.
Can I open the chatbot from a custom link or button instead of the floating bubble?
Yes. The cleanest way is the Trigger add-on, which turns any element on your page into a chat opener via two data attributes: add data-mxchat-open to a button or link to open the widget on click, or add data-mxchat-trigger="Your prefilled message" to open the widget AND auto-send that message — perfect for CTAs like “Ask about pricing” or “Get a quote”. With Multi-Bot active, add data-mxchat-bot-id="support" to target a specific bot. Without the add-on, you can still trigger the widget from JavaScript by simulating a click on the rendered floating button: document.querySelector('.floating-chatbot-button').click() — wire that to any element’s onclick handler. For an anchor element, remember to call event.preventDefault() first so the browser doesn’t follow the # href and scroll the page to the top. Available in MxChat core (the free plugin); the Trigger add-on adds the simple data-attribute API plus built-in button styles, hover animations (shake, pulse, bounce), and Multi-Bot targeting.
How do I add the chatbot to a specific page or post? What shortcode does MxChat use?
MxChat registers one shortcode — — and it lives in the page/post editor, not in a separate admin menu (a common confusion). Paste anywhere in a page or post to render the floating widget on that page only, or to embed the chatbot inline at that exact spot in the content. If you’re running the Multi-Bot add-on, add bot_id="your-bot-slug" to pick which bot renders (e.g. ). If you’d rather have the chatbot appear on every page automatically with no shortcode, turn on MxChat → Settings → Display → Append to Body instead. Available in MxChat core (the free plugin).
Where are my API keys stored — locally or in the cloud? Does MxChat see them?
Locally, on your own server. Every API key you paste under MxChat → Settings → API Keys (OpenAI, Anthropic Claude, Google Gemini, xAI Grok, DeepSeek, OpenRouter, Voyage, Loops, Brave) is saved as a field inside the mxchat_options row of your WordPress wp_options table — the same database that holds the rest of your site’s settings. The keys never leave your server except when MxChat uses them to call the provider you configured them for (e.g. the OpenAI key is sent to api.openai.com when generating a reply); they are not transmitted to mxchat.ai, not synced to any MxChat-hosted service, and not visible to MxChat staff. If you want extra defense-in-depth, restrict database access at the host level and use the providers’ own usage-limit / IP-allowlist controls — those run on the provider side, not in MxChat. Available in MxChat core (the free plugin).
Do I need my own AI API keys, or are language models included with MxChat?
MxChat is bring-your-own-keys — the plugin doesn’t bundle access to any AI provider. Open accounts at the providers you want to use (OpenAI, Anthropic, Google Gemini, xAI Grok, DeepSeek, or OpenRouter), then paste each key under MxChat → Settings → API Keys; without a key, that provider’s models won’t load and you’ll see a “No API key detected” warning on the model picker. The provider bills you directly for usage — MxChat doesn’t proxy, meter, or mark up the API calls. If you only want to manage one account, OpenRouter gives you a single key that unlocks 100+ models from many providers. Available in MxChat core (the free plugin).
AI models & providers
Why isn’t GPT-4.1 in the model dropdown anymore?
OpenAI deprecated the GPT-4.1, GPT-4o, GPT-4-turbo and GPT-3.5-turbo families on 2026-02-17, so MxChat removed them from the model picker. MxChat 3.0.55+ migrates any saved chat-model setting on those families to GPT-5.1 Chat Latest (or GPT-5 Mini for the mini variants) the next time the plugin loads, and shows a one-time admin notice describing the swap. The list you see now (GPT-5, 5 Mini, 5 Nano, 5.1, 5.1 Chat, 5.2, 5.3 Chat, 5.4, 5.4 Mini, 5.4 Nano) is OpenAI’s current GPT-5 lineup; pick any of those under MxChat → Settings → Chat Model. Available in MxChat core (the free plugin).
Which OpenRouter models can I use with MxChat — including the free ones?
The full OpenRouter catalog. Paste your OpenRouter API key under MxChat → Settings → API Keys, then in MxChat → Chatbot → Settings click Load OpenRouter Models; MxChat pulls the live list directly from OpenRouter’s /api/v1/models endpoint and shows every model OpenRouter exposes — paid and free — as a selectable card with pricing and context length. Free models (the ones OpenRouter suffixes with :free, e.g. deepseek/deepseek-chat-v3-0324:free) work the same as any paid model; pick one and save. There is no curated allow-list inside MxChat. Available in MxChat core (the free plugin).
What AI models does MxChat support?
MxChat supports 100+ models across six providers: OpenAI (GPT-5.2, 5.1, 5, 5 Mini), Anthropic (Claude Opus 4.6/4.5, Sonnet 4.6/4.5, Haiku 4.5), Google Gemini (2.0 Flash, 1.5 Pro), xAI Grok (4 and 3), DeepSeek, and OpenRouter. Add the OpenRouter API key under MxChat → Settings → API Keys to access models from Meta, Mistral, and others through a single key. Qwen is reachable via OpenRouter; native Qwen support is not built in.
Knowledge base & training
Can MxChat automatically sync course content from LMS plugins like LearnDash, LifterLMS, or Tutor LMS?
Yes. MxChat auto-syncs any public custom post type, which includes courses, lessons, and quizzes from the major LMS plugins as long as they’re registered as public CPTs. Open MxChat → Knowledge, expand Sync Custom Post Types, and toggle on the post types you want indexed (e.g. sfwd-courses for LearnDash, course for LifterLMS, courses for Tutor LMS). Whenever a course is published or updated — including ones added by users on the front end — the content is re-indexed automatically. Available in MxChat core (the free plugin).
How do I set up Pinecone for MxChat?
Create the index in your Pinecone dashboard first at app.pinecone.io, then connect it under MxChat → Knowledge → Pinecone. You’ll need four values: API Key, Region (e.g. gcp-starter), Index Name, and Host (the hostname from your index URL, without https://). Toggle Enable Pinecone Database on, paste the values, and save — new knowledge entries will then be stored in Pinecone instead of the WordPress database. Available in MxChat core (the free plugin).
Is Pinecone required? Where is the chatbot’s knowledge stored?
No. MxChat ships with free, unlimited local vector storage in your WordPress database — that is the default and is sufficient for most sites. Pinecone is optional and only recommended for enterprise-scale knowledge bases with thousands of entries that need faster search. If you do connect Pinecone, configure it under MxChat → Settings → Pinecone.
Can I include ACF fields or taxonomy data in the knowledge base?
Yes. ACF field data is automatically included when you import posts, pages, or products into the knowledge base — use ACF Field Settings to control which fields are exposed or hidden. For taxonomy-level ACF fields (e.g. fields attached to a custom term), use the mxchat_before_process_post filter to append the term’s ACF values to the post content before indexing. The filter receives the WP_Post object and the bot ID.
What can I upload to train the chatbot?
MxChat trains via RAG on WordPress pages, posts, WooCommerce products, custom post types, PDFs, Word documents, plain text files, XML sitemaps (including PDF URLs in sitemaps), and manual Q&A entries. Imports are unlimited. Enable auto-sync per content type so updates propagate without manual re-importing.
Customization & themes
How do I resize or restyle the chat widget? What CSS selectors and default dimensions does it use?
There’s no admin field for the chat window’s width or height today, but every visual layer has a stable class hook you can override from your theme’s Customize → Additional CSS. Useful selectors: .mxchat-chatbot-wrapper (outer floating shell), .mxchat-chatbot (main container), .chat-container (flex interior), .chat-box (scrollable message area), .bot-message / .user-message / .agent-message (bubbles), .chatbot-top-bar, and .chatbot-footer. Defaults in chat-style.css: floating widget is 375×625 px (capped to 100vh − 50px on short screens); the embedded shortcode renders at a fixed 500 px height. To resize the floating window, target .mxchat-chatbot-wrapper { width: …; height: …; }. Available in MxChat core (the free plugin).
How do I shorten the bot’s responses or set a lower max-tokens?
There is no max-tokens slider in the admin UI; the chat-reply path hard-caps each response at 1000 output tokens server-side, and the model can return fewer. The supported way to make answers shorter is to add a behavior rule under MxChat → Settings → AI Instructions (Behavior) — for example, Answer in 1–2 sentences. or Keep responses under 60 words. That works across every provider without code changes. Available in MxChat core (the free plugin).
Does MxChat have a REST API I can use from external tools?
Yes — MxChat exposes a bearer-token-authenticated REST API at /wp-json/mxchat/v1/ with three endpoints: GET /health for a connectivity check, GET /transcripts (and DELETE) for reading or pruning chat history with filters for date range, role, session, and whether the answer used RAG context, and POST /knowledge for pushing content into the knowledge base from external tools like n8n, Zapier, Make, custom dashboards, or your own agents. The API is disabled by default — generate a token from MxChat → API Access, then send it on each request as Authorization: Bearer <token>. This is separate from the chat widget itself, which still uses WordPress’s admin-ajax.php path internally. Available in MxChat core (the free plugin).
Can I stop the chatbot from answering certain topics (legal, medical, etc.) and have it return a link instead?
Yes, via the system prompt. Go to MxChat → Settings → Chatbot tab → AI Instructions (Behavior) and add a directive such as Do not provide legal advice. If asked about legal matters, respond only with a link to https://example.com/legal-disclaimer. The model treats AI Instructions as a hard rule on top of the default behavior, so it will redirect the user rather than answer. This is the right tool for topic-level steering — the Moderation add-on is for banning specific users by email or IP, not for restricting subjects. Available in MxChat core (the free plugin).
How do I hide or unpublish the chatbot? It went live before I tested it.
Three layers of visibility control, broadest to narrowest. Site-wide: MxChat → Settings → Chatbot tab → toggle off Auto-Display Chatbot; the widget disappears from every page, and you can still embed it manually with the shortcode when you’re ready to test. Per post type: under the same Chatbot tab, Post Type Visibility lets you switch to Include or Exclude mode and pick which post types (pages, products, posts, custom) get the widget. Per page: open the post in the editor, find the MxChat Visibility meta box in the sidebar, and choose Hide. Available in MxChat core (the free plugin).
Does MxChat offer a white-label option? Can I remove the MxChat branding from the chatbot?
The chat widget is effectively white-label out of the box — visitors never see the MxChat name. You set your own bot name, avatar, welcome message, theme colors, and (optional) custom CSS under MxChat → Chatbot, and that’s what visitors see. There is no “Powered by MxChat” footer to remove, no MxChat logo embedded in the widget, and no required outbound link. What MxChat does not offer is reseller white-labelling of the plugin itself — the WordPress admin pages still read “MxChat”, and the Pro / Agency / Agency Plus licenses are for using the plugin on multiple sites you control, not for rebranding and selling it as your own product. If full plugin-level white-label or reseller licensing is what you need, that’s a conversation for support, not a built-in feature. Available in MxChat core (the free plugin).
Is MxChat translated into other languages? How do I translate it into Polish, Spanish, etc.?
The chatbot itself already replies in the visitor’s language automatically — the underlying AI model translates on the fly with no configuration. The plugin’s admin UI is translation-ready (text domain mxchat, .pot file under /languages/) and registered on translate.wordpress.org, so any locale the community has translated will load automatically once your WordPress site language is set under Settings → General. To contribute a translation (Polish, Spanish, or anything else), sign in at translate.wordpress.org and submit strings; once approved, they ship as a language pack to every MxChat install. For a private translation, drop a compiled .mo file into /wp-content/languages/plugins/mxchat-pl_PL.mo — WordPress picks it up automatically. Available in MxChat core (the free plugin).
What’s the difference between AI Theme Customizer and AI Theme Generator?
They’re the same product. “AI Theme Customizer” is the marketing name (the page at mxchat.ai/ai-theme-customizer and the WordPress plugin slug); “AI Theme Generator” is the in-admin UI label you see at MxChat → AI Theme Generator after activating the plugin. There’s no separate download — a Pro license unlocks the Theme Customizer plugin, and chatbot themes are created inside the AI Theme Generator screen rather than downloaded as files. Requires the Theme Customizer add-on.
Add-ons & integrations
Does MxChat work with WhatsApp Business? Can the bot reply via WhatsApp?
Not as a live-agent channel. MxChat’s built-in human-handoff channels are Telegram and Slack (configured under MxChat → Settings → Integrations) — there is no native WhatsApp Business handoff or webhook integration in the current release. What MxChat does handle on the WhatsApp side is smart contact detection: if a visitor types a WhatsApp-formatted phone number into the chat, MxChat recognizes it and (with “Only send if visitor provided contact info” enabled on the Auto-Email Transcript setting) will trigger the transcript email so your team can follow up on WhatsApp manually. A native WhatsApp channel is on the product roadmap; track contact us for status. Available in MxChat core (the free plugin).
Can MxChat book appointments or schedule meetings inside the chat?
No — MxChat doesn’t have native appointment booking or calendar integration as of v3.2.6. The Forms add-on can capture name, email, phone, and preferred-time text fields and email the submission to you, but it doesn’t talk to Google Calendar, Calendly, Acuity, or any scheduling API. For a real booking flow, embed a Calendly/Acuity widget on your contact page and have the bot deep-link to that page when a visitor asks to book — you can do this with a custom AI Instruction (“If the user asks to book an appointment, send them to /contact/”). Forms capture available with the Forms add-on; native calendar/scheduling is not in MxChat today.
Does MxChat Forms support webhooks, Zapier, or a WordPress action hook on submission?
Not in the current release. MxChat Forms persists submissions to the WordPress database but does not emit a per-submission webhook, fire a do_action() hook, or have a built-in Zapier connector — a grep for do_action across mxchat-forms/ returns zero matches as of v3.2.x. Today’s integration paths: read submissions out-of-band through MxChat’s core REST API (poll GET /wp-json/mxchat/v1/transcripts with a date filter and reconcile against the forms table), or write a small custom WP plugin that polls the wp_mxchat_forms table on a cron. For real-time push to Zapier, Make, n8n, Slack, or a CRM, this is a tracked feature request on the roadmap — submitted as a Forge plan after a developer asked all three of these in one session. If you need it sooner, the support team can usually expedite a tracked plan; in the meantime the REST-polling path is the supported workaround. Requires the Forms add-on.
Can the chatbot add products to the cart or place orders directly through the chat?
It can add to cart; it doesn’t place the order. With the WooCommerce add-on, the bot detects “add to cart” intent in any language, resolves which product the user means from the conversation context, and calls WC()->cart->add_to_cart() in-place — the cart icon in the chatbot toolbar updates, and the visitor can keep browsing. The visitor still completes payment through WooCommerce’s standard checkout on your site; MxChat doesn’t take credit cards, process payments, or finalize the order itself. Enable the cart icon under MxChat → Toolbar & Components after activating the add-on. Requires the WooCommerce add-on.
Does the WooCommerce integration include custom product fields and attributes in the AI’s knowledge?
Yes — three layers. WooCommerce native attributes (both taxonomy-based ones like pa_color and the custom product-level attributes you add on a product’s Attributes tab) are pulled into product context automatically when the WooCommerce add-on is active. ACF fields on products are indexed when products are synced to the knowledge base; control which fields are exposed under MxChat → Knowledge → ACF Field Settings. For arbitrary post meta that isn’t ACF, opt individual meta keys into the index using the custom-meta whitelist on the same screen. Available in MxChat core; the WooCommerce add-on extends it with attribute extraction and cart/order/customer-aware responses.
Can MxChat write blog posts or landing pages with AI?
Yes. Open MxChat → Content → Generate, choose Blog Post or Landing Page in the Type dropdown, set Status (Draft, Scheduled, or Publish), pick a layout, and run the generator. Output includes AI-generated images and SEO metadata, with inline editing before saving. Available in MxChat core; the Advanced Content add-on extends it with smart internal linking, an image manager, and a content calendar for scheduling batches.
What is the Multi-Bot add-on and when do I need it?
Multi-Bot is a Pro add-on that lets you run multiple specialized chatbots on the same site, each with its own knowledge base, system prompt, welcome message, quick questions, and per-bot action controls. Deploy them via shortcode () or pick a bot per page in the post editor. Use it when one bot’s persona or content scope shouldn’t bleed into another — e.g. a sales bot on product pages and a technical-support bot in the docs section.
Can MxChat hand off to a live agent?
Yes — built-in handoff is available via Slack and Telegram. Slack posts the conversation into a Slack channel; Telegram sends each visitor’s session into its own forum topic inside a Telegram supergroup (which must have Topics enabled), so your team can reply from their phone. Both are configured under MxChat → Settings → Integrations — Telegram needs a bot token from @BotFather and the webhook URL MxChat shows on that screen registered with Telegram. Direct integrations with Tawk.To, Intercom, Crisp, or LiveAgent are not built in; if you use one of those, the handoff would need a custom workflow. Available in MxChat core (the free plugin).
Troubleshooting
Can visitors talk to the chatbot instead of typing? Is there voice input?
Not currently. MxChat’s chat widget is text-only — the input field accepts typing, paste, and the existing emoji and file-upload buttons (when the Image Analysis add-on is active), but there is no built-in microphone button or speech-to-text capture. If you need voice input today, the workaround is a small custom snippet that uses the browser’s built-in SpeechRecognition API to populate the textarea before the visitor presses Send — outside the plugin’s shipped surface, but doable in a child-theme JS file. A native voice-input button is on the roadmap; track contact us for status. Available in MxChat core (the free plugin).
How do I get MxChat to retry automatically when the AI provider rate-limits or errors out?
MxChat does not auto-retry failed provider calls — a Gemini “model overloaded,” OpenAI 429, or Claude overload error is surfaced to the user verbatim and the chat continues with the next message. The practical workaround is to switch to a less rate-limited provider or model under MxChat → Settings → Chat Model, or paste an OpenRouter key under MxChat → Settings → API Keys so you can move between 100+ backends behind one credential when one provider is busy. Available in MxChat core (the free plugin).
Is MxChat WCAG / ADA accessible? Is the chatbot screen-reader friendly?
The chatbot ships with real accessibility primitives — but no formal audit and no claimed WCAG conformance level. What’s in the box: every interactive control in the chat header (open, close, send, copy, 3-dot menu) has an aria-label, the pre-chat form fields use sr-only labels for screen readers, all buttons are keyboard-focusable, and the 3-dot overflow menu exposes proper role="menu" / role="menuitem" semantics with Escape and arrow-key support. What’s NOT shipped: a third-party WCAG audit, an accessibility statement, or a claimed conformance level (A, AA, or AAA). Color contrast depends on the bot bubble and text colors you choose in MxChat → Chatbot — if your brand palette is low-contrast, the widget will inherit that. If you need formal WCAG-AA or ADA compliance for your site, plan to audit the chatbot in context of your theme and colors before signing off. Available in MxChat core (the free plugin).
Telegram live agent: I get customer messages in the supergroup but my replies don’t reach the customer — why?
This is almost always a webhook misconfiguration. When you reply inside a topic, Telegram POSTs the message to /wp-json/mxchat/v1/telegram-webhook on your site, and that handler routes your reply back into the visitor’s chat session. Three things to verify: (1) Open MxChat → Settings → Integrations → Telegram → Webhook Setup and click the Register Webhook URL link in your browser — you should see {"ok":true,"result":true,"description":"Webhook was set"}. A rest_no_route 404 means the URL you registered with Telegram doesn’t match what WordPress exposes (re-register from this screen). (2) Your supergroup must have Topics enabled (Group → Manage → Topics), and you must reply inside the per-visitor topic — messages posted in the General channel are ignored on purpose. (3) WordPress permalinks must be set to anything other than “Plain” (Settings → Permalinks), otherwise REST routes return 404. Available in MxChat core (the free plugin).
Where does my chat data go — does the AI provider see my visitors’ messages?
Conversation history is stored locally in your WordPress database; nothing is sent to MxChat servers. Each user message is forwarded to the AI provider you configured (OpenAI, Anthropic, Google, xAI, DeepSeek, or OpenRouter) so it can generate a response — those providers see the message in transit and apply their own privacy policies. MxChat is GDPR-friendly: you control retention, can export transcripts, and can delete conversations from the Transcripts dashboard.
Can I export chat transcripts?
Yes. Open MxChat → Transcripts in WP admin to view all conversations with full context (user messages, AI responses, RAG sources used, timestamps). Transcripts can be exported and individual conversations or leads can be deleted from the same screen.