Table of Contents
- Key takeaways
- Can you embed ChatGPT in a website?
- Why an iframe of ChatGPT does not work
- Why a custom GPT link is not an embed
- 3 ways to embed ChatGPT in your website
- Route 1: Embed ChatGPT with the OpenAI API
- Steps
- Cost
- Limits
- Who it fits
- Route 2: Embed a no-code chatbot trained on your content
- Steps
- Embed options
- Cost
- Limits
- Who it fits
- Route 3: Embed a chat with OpenAI ChatKit
- Steps
- Cost
- Limits
- Who it fits
- How much does it cost to embed ChatGPT in a website?
- How to choose between the three routes
- Where the embed code goes on WordPress, Shopify, Wix, Squarespace, and Webflow
- Common mistakes when embedding ChatGPT in a website
- Frequently asked questions
- Basics
- Can you embed ChatGPT in a website?
- Can you use ChatGPT on your website?
- Can you put ChatGPT in an iframe?
- Is a ChatGPT chatbot for a website the same as ChatGPT?
- Setup
- How do you add ChatGPT to a website without coding?
- Where does the chatbot embed code go?
- How do you add ChatGPT to a WordPress site?
- Can an embedded chatbot answer from your own content?
- Cost and models
- How much does it cost to add ChatGPT to a website?
- Is it free to embed ChatGPT in a website?
- Which OpenAI model should a website chatbot use?
- Is OpenAI ChatKit free?
- Sources

- The ChatGPT site cannot be loaded in an iframe. It sends the X-Frame-Options: SAMEORIGIN header, and browsers block it on other domains.
- Three routes work: the OpenAI API with your own chat window, a no-code chatbot trained on your content, and OpenAI ChatKit.
- The API is the cheapest per answer. 10,000 answers a month cost about $29.50 on gpt-6-luna with file search, before developer time and hosting.
- A no-code chatbot is the fastest route. SiteGPT installs with one script tag and starts at $59 a month billed monthly, or $39 a month billed yearly.
- A custom GPT link is not an embed. It opens inside ChatGPT, and OpenAI plans to retire custom GPTs.
Key takeaways
Question | Short answer |
Can you embed ChatGPT in a website? | Not the ChatGPT app. You can embed a chat that runs on the same OpenAI models |
Can you put ChatGPT in an iframe? | No. The ChatGPT site blocks framing on other domains |
Best route for developers who want full control | The OpenAI Responses API with your own chat window |
Best route for a customer service chatbot with no developer | A no-code chatbot such as SiteGPT, installed with one script tag |
Best route for developers who want a ready-made chat window | OpenAI ChatKit on your own server |
Lowest cost at 10,000 messages a month | The API at about $29.50, before developer time and hosting |

Can you embed ChatGPT in a website?
Why an iframe of ChatGPT does not work
Why a custom GPT link is not an embed
- Personal accounts on Free, Go, Plus, and Pro cannot create or publish new GPTs. Creation needs a Business, Enterprise, or Edu workspace. A Business Standard seat costs $25 per user a month billed monthly, or $20 per user a month billed annually.
- OpenAI plans to retire custom GPTs. The planned date for affected Enterprise workspaces is December 11, 2026, and OpenAI expects other plans to follow the same timeline.
3 ways to embed ChatGPT in your website
- Who builds it. A developer, or anyone who can paste a script.
- Where the answers come from. The model alone, or your own content.
- How it is priced. Per token, or a flat monthly plan.
- What you maintain. A server and a chat window, or nothing.
Route | Best for | Needs code | Needs your own server | Price to start |
1. OpenAI API with your own chat window | Developers who want full control | Yes | Yes | Usage-based. gpt-6-luna costs $0.10 input and $0.50 output per 1M tokens |
2. No-code chatbot (SiteGPT) | A customer service chatbot with no developer | No | No | $59 a month billed monthly, or $39 a month billed yearly. No free plan |
3. OpenAI ChatKit | Developers who want a ready-made chat window | Yes | Yes, for new builds | Usage-based, at the same model rates as route 1 |
Route 1: Embed ChatGPT with the OpenAI API
Steps
- Create an OpenAI API key in the OpenAI dashboard.
- Store the key on your server as an environment variable. OpenAI's key safety guide says never to deploy a key in browsers or mobile apps.
- Create a vector store and upload your help content to it. The file search tool lets the model search those files before it answers.
- Write a server endpoint that receives the visitor's message and calls the Responses API.
- Build the chat window in HTML and JavaScript. The window posts each message to your endpoint and shows the reply.
- Add what a bare API does not give you: rate limits, chat history, and a way to reach a person.
import OpenAI from "openai";
const client = new OpenAI();
const response = await client.responses.create({
model: "gpt-6-luna",
input: visitorMessage,
tools: [{ type: "file_search", vector_store_ids: ["<vector_store_id>"] }],
});
return response.output_text;Cost
Cost line | Per 1,000 answers | At 10,000 answers a month |
Input tokens at $0.10 per 1M | $0.30 | $3.00 |
Output tokens at $0.50 per 1M | $0.15 | $1.50 |
File search calls at $2.50 per 1,000 | $2.50 | $25.00 |
Total | $2.95 | $29.50 |
Limits
- It needs a server. A page that calls OpenAI straight from the browser exposes the API key to every visitor.
- There is no widget, dashboard, or handoff to a person unless you build them.
- Older tutorials use the Assistants API. OpenAI shut it down on August 26, 2026 and points developers to the Responses API.
- Keeping the uploaded files current is your job.
Who it fits
Route 2: Embed a no-code chatbot trained on your content
Steps
- Sign in with your email address and start the 7-day trial. The trial requires a credit card.
- Select Create New Chatbot and name it.
- Add your content. Sources include website URLs, sitemaps, uploaded files, YouTube, Google Drive, Dropbox, OneDrive, Box, Notion, and GitHub.
- Wait for training, then test the chatbot with three or four questions your visitors often ask.
- Open Installation and copy the code under JavaScript Embed.
- Paste the code into your site and publish.
- Open your site in a private browser window. The chat icon appears in the bottom corner after a short delay.
<script type="text/javascript">window.$sitegpt=[];(function(){d=document;s=d.createElement("script");s.src="https://sitegpt.ai/widget/YOUR_CHATBOT_ID.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})();</script>Embed options
Option | What it does |
open=true | Opens the chat when the page loads |
mobile=false | Hides the chat icon on screens narrower than 640 px |
delay=5000 | Waits 5 seconds before adding the chat icon. The default is 2 seconds |
iconPosition=LEFT | Puts the chat icon on the left |
hideBubble=true | Removes the floating chat, for use with a chat placed inside the page |
Cost
SiteGPT plan | Billed monthly | Billed yearly | Messages a month | Chatbots |
Starter | $59 a month | $39 a month ($468 a year) | 4,000 GPT-4.1-mini or 400 GPT-4.1 | 1 |
Growth | $129 a month | $79 a month ($948 a year) | 10,000 GPT-4.1-mini or 1,000 GPT-4.1 | 2 |
Scale | $429 a month | $259 a month ($3,108 a year) | 40,000 GPT-4.1-mini or 4,000 GPT-4.1 | 3 |
Limits
- There is no free plan. The 7-day trial needs a credit card.
- Message quotas are fixed per plan. A GPT-4.1 message uses 10 times the quota of a GPT-4.1-mini message.
- Starter has no chat integrations, no API access, and manual content refresh only.
- Removing SiteGPT branding is a paid add-on at $39 a month billed yearly.
- There is no Intercom or HubSpot integration today.
- The chat icon does not show if the site's domain is missing from the chatbot's Allowed Domains list, or if a strict content security policy blocks the script.
Who it fits
Route 3: Embed a chat with OpenAI ChatKit
Steps
- Install the ChatKit server package with
pip install openai-chatkit.
- Implement a ChatKit server class that responds to each visitor message. OpenAI's guide connects it to the Agents SDK.
- Expose an HTTP endpoint that forwards requests to that server.
- Implement a data store for threads and messages. Use durable storage in production.
- Add the ChatKit script to your page and render the chat with the ChatKit JS or React bindings.
- Authenticate your users on the server. OpenAI's hosted path requires a unique user identifier for every session.
Cost
Limits
- It needs a server, a data store, and user authentication.
- It gives you a chat window, and the content retrieval is still yours to build.
- Hosted Agent Builder workflows stop on November 30, 2026.
- There is no dashboard for non-developers and no built-in handoff to a person.
Who it fits
How much does it cost to embed ChatGPT in a website?
Messages a month | OpenAI API on gpt-6-luna | SiteGPT plan with that quota | SiteGPT, billed monthly | SiteGPT, billed yearly |
4,000 | $11.80 | Starter | $59 a month | $39 a month |
10,000 | $29.50 | Growth | $129 a month | $79 a month |
40,000 | $118.00 | Scale | $429 a month | $259 a month |

How to choose between the three routes
If you need... | Pick... | Why |
A chatbot on your site this week, with no developer | Route 2: a no-code chatbot | Install is one script tag, and the platform hosts everything |
Answers from your own pages, files, and videos | Route 2: a no-code chatbot | The platform crawls and indexes the content for you |
The chat inside your own product, in your own design | Route 1: the OpenAI API | You control the interface, the model, and the data flow |
The newest OpenAI model on day one | Route 1: the OpenAI API | You set the model ID yourself |
The lowest cost per answer at high volume | Route 1: the OpenAI API | About $118 for 40,000 answers in the worked example, before developer time |
A polished chat window without designing one | Route 3: ChatKit | OpenAI supplies the interface, and you supply the server |
Handoff to a person on your team | Route 2: a no-code chatbot | Routes 1 and 3 have no handoff unless you build one |
An assistant for your own team inside ChatGPT | A ChatGPT project or custom GPT | Nothing needs to be embedded |

Where the embed code goes on WordPress, Shopify, Wix, Squarespace, and Webflow
- WordPress: how to add a chatbot to WordPress
- Wix: AI chatbots for Wix
- Squarespace: chatbots for Squarespace
- Webflow: AI chatbots for Webflow
Common mistakes when embedding ChatGPT in a website
- Putting the ChatGPT site in an iframe. The browser blocks it. Use one of the three routes.
- Calling OpenAI from browser JavaScript. The API key becomes visible to every visitor. Route every request through your own server.
- Following an Assistants API tutorial. OpenAI shut that API down on August 26, 2026. Use the Responses API.
- Starting a new build on Agent Builder. It shuts down on November 30, 2026. New ChatKit builds use your own server.
- Sending customers to a custom GPT. The chat happens inside ChatGPT, and OpenAI plans to retire the feature.
- Launching without your own content. A bare model knows nothing about your prices or policies. Connect it to your pages and tell it to decline when the content has no answer. Chatbot hallucinations covers the other guardrails.
Frequently asked questions
Basics
Can you embed ChatGPT in a website?
Can you use ChatGPT on your website?
Can you put ChatGPT in an iframe?
Is a ChatGPT chatbot for a website the same as ChatGPT?
Setup
How do you add ChatGPT to a website without coding?
Where does the chatbot embed code go?
How do you add ChatGPT to a WordPress site?
Can an embedded chatbot answer from your own content?
Cost and models
How much does it cost to add ChatGPT to a website?
Is it free to embed ChatGPT in a website?
Which OpenAI model should a website chatbot use?
Is OpenAI ChatKit free?
Sources
- ChatGPT response headers






