1. Join the waitlist, then sign in with the link James sends.

Choose Join the waitlist and tell us your name, work email, company, role and the problem you want solved. We’re onboarding our first customers personally, so James opens your workspace and sends your sign-in link. The link works once and expires after 15 minutes. You won’t need a password or a card.

Customer calls start switched off, and the Overview tab’s launch checklist points you to the next step.

2. Add your knowledge and approve each source.

Open Knowledge and choose Add knowledge to paste in FAQs, how-to guides and product answers. The support agent can also import a .md, .mdx or .txt file from a public GitHub repository, and sales notes go on the Sales agent tab. Website import is switched off, so paste in any page content you want used.

Each new source is saved as Needs review. Open it, read the full text and choose Approve for your agent, because each agent searches only its own approved sources. Refreshing a GitHub file sends it back for review. Approval controls what the agent can use. It can’t guarantee every answer, so you’ll still test in step 6.

3. Set up the support or sales agent.

On the Voice agent tab, name your product and the agent, write its greeting and instructions, pick the Marin or Cedar voice and save. The agent tells callers it’s an AI and greets them in English. It can’t look up accounts, so tell it which contact route to suggest when it can’t help, such as your support email.

The sales agent has its own tab with the same settings, knowledge and button, so you can run support, sales or both.

Human handover is an early release, and it starts switched off. To let callers reach your team, verify a UK or US phone number for the agent in Settings and turn handover on, and whoever answers hears a private briefing before the caller is connected. Customer routing is still being tested, so keep your contact route in the instructions too.

4. Add your allowed website origins.

On the Installation tab, list each origin that may start calls, one per line: the scheme and host, plus any port, with no path, such as https://www.example.com. Each agent takes up to 10, and sales has its own list.

https://example.com and https://www.example.com are different origins, so add both if you use both, plus any staging site. Origins must use HTTPS, except http://localhost and http://127.0.0.1 for local testing. Calls from any other address are refused.

5. Paste the script tag into your website.

Copy the snippet from the Installation tab and paste it just before the closing </body> tag on each page that should show the button. It holds only your public workspace ID, which starts with hl_, so no secret keys reach the browser.

The button sits in the bottom-right corner, with the label and colour you choose. The sales snippet, from the Sales agent tab, adds data-channel="sales", and both buttons can share a page.

Until step 7, visitors who open the panel see “This line is not accepting calls yet.” Try a staging page first, or add the tag when you go live.

Support agent script tag
<script
  src="https://app.kawlnow.com/widget.js"
  data-helpline="YOUR_WORKSPACE_ID"
  async>
</script>
Sales agent script tag
<script
  src="https://app.kawlnow.com/widget.js"
  data-helpline="YOUR_WORKSPACE_ID"
  data-channel="sales"
  async
></script>

6. Run test conversations.

Choose Have a conversation on the Voice agent tab, or Test sales agent on the Sales agent tab. Dashboard tests use your saved settings and work before you add an origin or switch on calls, and each test that starts uses one of your free conversations.

Ask the questions customers really ask, including a few your sources don’t cover. Then read each transcript under Conversations and fix the source or instruction behind any weak answer.

7. Switch on customer calls.

Turn on Accept customer calls on the Installation tab and save, or Accept sales calls on the Sales agent tab. Visitors on your allowed sites can then click the button, type what they need, allow the microphone and talk, with captions, mute and an end button. Calls stop at 10 minutes, with up to 3 at once per workspace.

The REST API and MCP don’t stop you switching calls on before you’ve approved knowledge or tested, so treat those as your go-live check. Then try a call on desktop and mobile, and read new transcripts for the first week.

How do you add voice AI to your website yourself?

OpenAI’s GPT-Live and Realtime API both connect a browser to a voice model over WebRTC, which OpenAI recommends for browser voice apps. Your server keeps the API key and passes the browser’s connection offer to OpenAI. With the Realtime API, it can give the browser a short-lived key instead. OpenAI’s guide says to protect your server’s session endpoint with authentication, authorisation, request limits and HTTPS before others use it.

The browser’s Web Speech API is the other starting point. SpeechRecognition turns speech into text and SpeechSynthesis reads text aloud, so your code sends the words to a language model with your docs and speaks the reply. MDN marks speech recognition as limited availability, because it doesn’t work in some of the most widely used browsers. Some browsers that support it, such as Chrome, send the audio to a server for recognition by default.

Either way, you build and run the parts around the model:

  • A server that keeps API keys out of the browser, and checks on which sites can start a call.
  • Search over your docs, with a review step for what the agent may use.
  • Limits on call length and spend, plus somewhere to store and read transcripts.

When does each route fit?

Build on OpenAI’s GPT-Live or Realtime API if voice is part of your product, the agent needs account data or custom tools, or you want to choose the model and interface.

Try the Web Speech API for a prototype, if you can accept that some browsers won’t support it.

Install Kawl Now for spoken answers to product and sales questions on your SaaS website, from sources your team approves, without building the server, limits or transcript review. It doesn’t take phone calls, offer text chat or connect to a CRM, so pick a voice agent platform or your own build for those.

Common questions

How do you add a voice AI agent to a website?

Use a ready-made widget, a voice agent platform or your own build. With Kawl Now, you approve the agent’s knowledge, set it up, allow your site’s HTTPS origin, paste one script tag before the closing </body> tag, test from the dashboard and switch on customer calls. To build your own, start from OpenAI’s GPT-Live or Realtime API over WebRTC and run the server, document search and limits yourself.

Can you add the widget to any website?

The Kawl Now widget can load on any page served over HTTPS where you can add a script tag before the closing </body> tag. Site builders differ in where custom code goes, and a Content Security Policy or Permissions-Policy header can block the call panel or microphone, so try a staging page first.

Can support and sales agents share a page?

Yes. Paste both Kawl Now snippets and the two buttons stack in the bottom-right corner, each with its own knowledge, voice and greeting. A duplicate snippet is ignored, and both agents share the workspace’s 50 free conversations.