
Knocket is a 100% free-forever contact widget platform for independent developers and early-stage founders. It ships in three forms — a one-line website widget, a shareable contact page, and a mobile app embed — all feeding into a single unified inbox. This tutorial walks through every form, every customization option, and every channel integration, using only the official Knocket knowledge base.
The three product forms
Form | What it is | Where it lives | Install time |
Web Widget | A floating chat bubble on a website | Any site with a </body> tag | ~1 minute |
Contact Page | A shareable link that looks like a profile page | knocket.com or a custom domain | ~2 minutes |
Mobile Widget | A chat bubble inside a native app | iOS, Android, React Native, Flutter apps | ~10 minutes |
The three forms are independent. A founder can ship the contact page on day one, the web widget on day seven, and the mobile widget when the app launches — without rebuilding any setup.
Who Is Knocket Built For?
Knocket is built for the kind of team that does not have a support team yet.
● Independent developers and indie hackers — a small SaaS, an open-source tool, or a side project that needs a way for early users to reach them
● Early-stage founders looking for the first 100 users — pre-PMF teams that need to read every message and reply like a human
● Small product teams running lightweight feedback loops — teams that want qualitative feedback without spinning up a customer service platform
Knocket is built for the moment when the founder is the entire support team. That moment is the one Knocket optimises for.

How Do I Install and Customize the Knocket Web Widget?
The web widget is fully customizable from the Knocket console, and every change previews in real time.
Theme color, logo, and avatar
Pick a primary color that matches the brand. The widget renders the launcher bubble, the header, the input field focus ring, and the send button in the chosen color. Upload a brand logo to appear in the widget header, and upload an avatar to represent the founder on the other side of the chat. Both assets are optional; the widget falls back to a clean text-only header if neither is provided.
Welcome message and welcome header
The welcome header is the first sentence a visitor reads when the widget opens. The welcome message is the body copy under the header. Both are short, both pre-fill, and both can be A/B tested from the console.
Proactive greeting
Turn on proactive greetings to show a short welcome message to first-time visitors after a configurable delay. Proactive greetings are the easiest way to convert a passive visitor into an active conversation.
Social link aggregation
Add links to the team’s WhatsApp, Instagram, Telegram, and Messenger accounts. The widget renders those links as alternative contact channels when the visitor prefers them over typing a message.
Advanced customization in code
For developers who want more control, the Knocket SDK reads a small global object at load time:
How Do I Publish a Knocket Contact Page?
The contact page is the form to ship when there is no website, when the website is not ready, or when the contact link needs to live in a bio. A contact page is a shareable URL that looks like a profile page and acts as a contact form, a social link hub, and a chat entry point.
Step 1: Create a contact page in the console
In the Knocket console, open Contact Pages → New, name the page, and pick a slug. The slug becomes the public URL.
Step 2: Configure the page
Fill in the visible fields:
● Avatar — a profile photo
● Display name — the name shown on the page
● Bio — one or two sentences about who is behind the page
● Social links — Instagram, X, LinkedIn, YouTube, GitHub, WhatsApp, Telegram, Messenger, and a personal website
● Email address — for direct email inquiries
● Phone number — optional, for direct calls
● Theme color — match the brand
Every field is optional. The page works even if only the display name and a single social link are filled in.
Step 3: Publish and share
Click Publish. The contact page goes live at https://knocket.com/p/your-slug. Share the link in any bio, post, or DM.
Where to share a contact page
A contact page fits almost anywhere a founder needs a single, stable link: link in bio, contact form, waitlist, coming soon page, newsletter signup, beta registration, partnership inquiry, feedback collection, customer support page, demo request, hiring contact, sponsorship or press, freelancer intake.
How Do I Embed the Knocket Widget in a Mobile App?
The mobile widget is a Knocket web widget loaded inside a WebView. Knocket is not a native SDK, and it does not ship one. The mobile form is a WebView embed, with a small JavaScript bridge so the host app can dismiss the WebView when the visitor closes the chat.
iOS (Swift)
Inject a user script that exposes a closeWebView function, and register a message handler:
Android (Kotlin)
Register a JavaScript interface named Knocket:
React Native
Inject a closeWebView polyfill that posts a message to React Native:
Flutter
Register a JavaScript channel named closeWebView that pops the route when the widget calls it:
What Is the Knocket Unified Inbox?
The unified inbox is the dashboard at Knocket inbox. Every message that arrives through any of the three forms, plus Telegram and email, lands in this one inbox.
What arrives in the unified inbox
Channel | Source | Where the reply lands |
Web Widget | The chat bubble on a website | Back in the widget |
Contact Page | A message on a shareable Knocket page | Back on the contact page |
Mobile Widget | A message in the in-app WebView | Back in the in-app WebView |
Telegram | A message to the team’s Telegram bot | Back on Telegram |
An email to the configured inbox address | Back as an email |
When a founder replies to a thread in the unified inbox, the reply goes back to the channel the message came in on. The routing is automatic and built into the platform — the founder never picks a channel, and the visitor never has to switch apps to keep talking.
How Do I Connect Telegram to the Knocket Unified Inbox?
Step 1: Create a Telegram bot
Open Telegram, search for @BotFather, and send /newbot. BotFather asks for a name and a username. After the bot is created, BotFather returns an HTTP API token. Copy the token.
Step 2: Paste the token into the Knocket console
In the Knocket console, open Settings → Channels → Telegram, paste the token, and click Connect. The console validates the token, registers a webhook with the Telegram Bot API, and confirms the connection.
Step 3: Test
Open Telegram, find the new bot, send it a message, and confirm the message lands in the Knocket Inbox. Reply to the thread from the inbox and confirm the reply arrives on Telegram.
How Do I Connect Email to the Knocket Unified Inbox?
In the Knocket console, open Settings → Channels → Email, and pick a Knocket-managed email address (for example, you@knocket.email) or connect a custom domain (for example, hello@yourdomain.com). For a custom domain, the console returns a small set of DNS records — an MX record and an SPF or DKIM record — that need to be added at the domain registrar. Once the records propagate, the console confirms the connection.
Send a test email to the configured address and confirm it lands in the Knocket Inbox. Reply to the thread from the inbox and confirm the reply arrives as an email in the visitor’s inbox.
What Is the Knocket Setup Flow End to End?
The full setup flow is short. A non-technical founder can complete it inside a single sitting.
1. Sign in — create an account at the Knocket console using an email address. The 100% free Knocket tier does not require a credit card.
2. Create a widget, a contact page, or both — pick the product form and create one in the console.
3. Configure the look and feel — pick the theme color, upload the logo and avatar, write a welcome message, and pick a launcher style.
4. Configure the contact surface — for a widget, choose working hours, proactive greetings, offline forms, and the social links to surface. For a contact page, fill in the bio, social links, and email address. For a mobile widget, register the widget identifier in the host app.
5. Connect channels — optionally connect Telegram and email to route those channels into the unified inbox.
6. Install — paste the snippet, share the contact page link, or load the WebView in the mobile app. Verify the bubble or page is live by sending a test message.
7. Reply from the inbox — open the Knocket Inbox, read the test message, and reply. The reply routes back to the channel the message came in on.
Frequently Asked Questions
What is Knocket?
Knocket is a 100% free-forever contact widget platform for independent developers and early-stage founders. It combines a web widget, a contact page, and a mobile widget into a single unified inbox, with optional Telegram and email channels. Knocket is built on Tencent RTC infrastructure, so every conversation runs on the same low-latency real-time transport that powers Tencent Cloud real-time communications. Try it at trtc.io/solutions/knocket.
Is Knocket really 100% free forever?
Yes. Knocket is 100% free forever for the core features — the web widget, the contact page, the mobile widget, the unified inbox, the Telegram channel, the email channel, the customization options, and the working hours schedule. There is no per-seat fee, no badge requirement, no build step, and no hidden tier.
Does Knocket have a contact page form?
Yes. The contact page is one of the three product forms. A founder can publish a Knocket contact page at a stable URL, configure the social links and the bio, and use it as a Link in Bio, a contact form, a waitlist, a beta registration form, or any other single-link use case.
Does Knocket have a mobile SDK?
No. Knocket is not a native SDK, and it does not ship one. The mobile form is a WebView embed that loads a Knocket URL inside a WKWebView on iOS, a WebView on Android, a react-native-webview WebView in React Native, and a webview_flutter WebView in Flutter.
How do I dismiss the Knocket widget inside a mobile app?
The Knocket widget calls window.closeWebView() when the visitor taps the close affordance. The host app injects a polyfill that maps that call onto the platform-native close action. iOS uses a WKUserScript and a WKScriptMessageHandler. Android uses addJavascriptInterface. React Native uses postMessage. Flutter uses addJavaScriptChannel.
How does the unified inbox work?
The unified inbox is the dashboard at Knocket inbox. Every message that arrives through any of the three Knocket forms — web widget, contact page, mobile widget — plus the optional Telegram and email channels, lands in the same inbox. When the founder replies in the inbox, the reply routes back to the original channel automatically. A Telegram reply lands on Telegram, a web chat reply lands in the widget, an email reply lands in the visitor’s inbox, and a contact page reply stays on the contact page thread.
Does Knocket support Telegram?
Yes. Create a bot with @BotFather, paste the token into the Knocket console under Settings → Channels → Telegram, and verify the connection. Every Telegram message lands in the unified inbox, and every inbox reply to a Telegram thread lands back on Telegram.
Does Knocket support email?
Yes. Connect an email address in the Knocket console under Settings → Channels → Email. Pick a Knocket-managed address or connect a custom domain. For a custom domain, add the DNS records the console returns. Every email message lands in the unified inbox, and every inbox reply lands back as an email in the visitor’s inbox.
Can I use Knocket without a website?
Yes. Use a Knocket contact page. The contact page is a shareable URL that works without a website, an app, or a domain. Share the contact page link in a bio, a DM, a post, or a QR code.
How do I get started?
Sign in to the Knocket console, create a widget or a contact page, configure the look and feel, paste the snippet or share the link, and reply from the Knocket Inbox. The full setup is a single short sitting.

