Custom AI prompts let you ask an AI model one question about each page you pick in Site Pages, and keep the answers next to the pages. You use your own key for OpenAI, Anthropic or Google Gemini. Your AI provider bills your own account, and PerfBee credits are not used. They are on Business and up.
The model works from the data Site Pages already holds for a page: its address, title, meta description, H1, word count, canonical URL, meta robots and HTTP status, its declared language, first H2, social title and description, a summary of its structured data and, if you tick it, the page's main text (the menu and footer are left out; a very long text is cut at 50,000 characters). So it is good at spotting clearly bad titles and descriptions, at checking them against what the page says, and at drafting fixes. Review every answer before you use it. PerfBee never changes your site with an answer.
Set up your key
Only the workspace owner and admins can add a key. Members and viewers see which providers have one.
- Create an API key in your account with OpenAI, Anthropic or Google Gemini. Each provider has a developer or API console where you make keys. Make sure the account has credit or a billing method, because the provider charges for every request.
- In PerfBee open Settings, then Integrations, and find the AI provider keys card.
- Paste the key into API key for that provider and press Save key.
- Press Test. PerfBee sends one tiny request that carries no page data. The provider accepted the key. means it works.
You type a key once. PerfBee stores it encrypted and never shows it again, only its last four characters to the owner and admins. To change it, type a new one under Replace the key. Remove deletes the stored key. Answers you already have stay.
Run a prompt
- Open Site Crawler, then Site Pages, pick a site and stay in the Pages view.
- Tick the pages you want, up to 500. Or tick the rows on the page and press Select all to take every page that matches your filters. A run takes up to 1,000 pages. You can also pick a Segment and run on every page in it. A prompt cannot use the Type, Rendering, Google, Not checked reason or Depth filter yet: with one of them on, tick the rows by hand or clear the filter.
- Press Run AI prompt in the bar above the table.
- Choose a prompt, or press New prompt. Use Start from a template for a first version: Fix titles, Write meta descriptions, Check title, H1, description, Developer note for a problem page, four that also read the page text: Does the title match the page, Page type and purpose, Dates and years in the text and Does the page answer a question, and eight more: Search intent and target query, FAQ draft from the page, Structured data fit, One-line summary, Brand voice check, Category page copy, Declared language vs the text and Social share preview, and two that write code: JSON-LD for the page and FAQ section as HTML. Every template asks for the answer in the language of the page.
- Tick Try it on 10 of these pages first to run on 10 pages spread over your list (over its first 1,000 pages when the list is longer), read the answers, and only then run the rest. A list longer than one run can only be tried this way until you narrow it. Press Check before running. You see how many pages will be sent, to which provider and model, and about how many input tokens that is. Nothing is sent before you press Run.
Viewers can read answers but cannot run a prompt. Only one run per workspace goes at a time. You can close the window: the run goes on, and you can cancel it from the window. A page whose answer is unchanged since the last run is not asked again unless you tick the box that asks it again.
Write the prompt
- Name is also the column and download header. Use 1 to 40 letters, digits, spaces, dashes or underscores. A workspace keeps up to 10 prompts.
- Provider and Model. PerfBee fills in a model for each provider. Type another model exactly as your provider spells it.
- What should the AI answer for each page? is your instruction, up to 4,000 characters.
- Page fields sent to the provider: URL, Title, Meta description, H1, Word count, Canonical URL, Meta robots, HTTP status, Page language (as declared), First H2, Social title (og:title), Social description (og:description), Structured data and Page text (main content). Only the fields you tick are sent. The default is URL, Title, Meta description and H1. These fields come from a detailed crawl: a page from an older crawl has none until the next detailed crawl, and a page text stored before the limit went up to 50,000 characters holds only the first 1,000 characters of the page until then.
Changing the provider, model, instruction or fields marks older answers of that prompt as Older prompt.
Read and download the answers
In the filter row of the Pages view, open AI column and choose one of your prompts. The column AI: your prompt name shows the stored answer for each page. A dash means no answer yet. No answer means the last try failed, and hovering shows why. Answers are plain text of at most 6,000 characters, one per page and prompt, with the code the prompt asked for behind Show code.
Once a prompt is chosen, AI answers downloads every stored answer of that prompt for the site as CSV or Excel. The file has the columns Prompt, AI Answer, AI Code, AI Answer Status and AI Answered (UTC) after the address, and a note with the provider and model.
Ask AI about one page
Page Detail has an Ask AI tab, on the same plans and with the same keys. It answers one question about the page you have open, and nothing is kept.
- Open a page from Site Pages and choose the Ask AI tab.
- Type your question, up to 4,000 characters. For example: who is this page for, and what is missing for them?
- Pick a provider you have a key for. PerfBee fills in its model. Type another one exactly as your provider spells it if you like.
- Tick Read the live page if the page changed after your last detailed crawl.
- Press Ask AI. The answer usually comes within a minute.
The model reads every page field a prompt can send (the list under Write the prompt), the page text included, not only the ones a prompt ticks. When no text is stored, or you tick Read the live page, PerfBee asks for robots.txt and then the page, once, from its crawler as PerfBeeBot. It respects robots.txt and follows a redirect only inside the site. A live read refreshes the title, description, H1, first H2, canonical URL, meta robots, HTTP status, language, word count and text. The social fields and the structured data stay as stored. If the live page cannot be read, the answer uses what PerfBee stored and says so.
An answer is plain text of at most 10,000 characters. Below it you see which provider and model wrote it, whether it used the stored or the live page, and which fields were sent. PerfBee deletes the question and the text it read once the answer is written, and the answer 10 minutes after you ask, so press Copy to keep it. None of them goes into its database. Members, admins and the owner can ask, viewers cannot. One question per workspace is answered at a time.
Ask for HTML or JSON-LD code
A prompt or an Ask AI question can ask for code: JSON-LD for the page, an FAQ section in HTML, or the title, meta description and canonical tags. The model writes the code after its answer, and PerfBee checks it before you see it:
- HTML keeps headings, text, lists, tables, details and summary, title, the description, keywords, author and social preview (og: and twitter:) meta tags, and link tags with rel canonical or alternate. Robots and site verification meta tags are removed. Scripts, styles, forms, frames, images, event handlers, ids and style attributes are removed.
- JSON-LD has to be valid JSON with a @type or a @graph. PerfBee writes it again inside its script tag, ready to paste.
- A link stays only when it is relative or points to your site's own address, with or without www. In JSON-LD, schema.org stays too. Links to other sites are removed, so add a logo on another domain or your social profiles yourself.
- Code that is cut off, is not valid JSON-LD or is longer than 6,000 characters is left out. The answer then ends with a sentence that says what PerfBee removed.
The code has its own box with Copy code: under the answer in Ask AI, and behind Show code in the AI column. The download has it in the AI Code column. PerfBee never runs the code. Read it before you paste it into your site, because a model can be wrong.
Answers written before a prompt asked for code have none. Change the instruction to ask for it, and every page is asked again. With the same instruction, tick the box that asks the pages with an unchanged answer again.
What the model sees, and what it does not
It sees your instruction and, for each page, only the fields you ticked, as PerfBee stored them in Site Pages from your last scans. Very long values are cut to a fixed length. When a detailed crawl found none of a field, the model reads that, for example Page language (as declared): none declared. A field the model gets no line for was not checked yet.
It does not see:
- its images, scripts or links, or a page text past 50,000 characters;
- any other page, or your whole site;
- numbers that come from Google, or any data from a connected Google account. These are never sent to a model, by design;
- anything about your PerfBee account.
The text of a page is written by its author. PerfBee tells the model that the page data is text to read, not instructions. The answer is plain text that cannot change anything, and code in it is checked as described above. A model can still be wrong, so read each answer.
What it is good for
- Rewriting titles and meta descriptions that are too long, too short, missing or repeated.
- Checking that a page's title, H1 and description tell the same story.
- Making duplicate titles different from each other.
- Labelling each page by type and by what a visitor wants from it, from its address, title and H1.
- Spotting titles that mix languages.
- Turning a 404 or 500, or a canonical and meta robots conflict, into a short note for a developer.
- Sorting pages with very few words, using the word count.
It can also write code for a page, such as JSON-LD or an FAQ section in HTML (see Ask for HTML or JSON-LD code).
It is not for judging how good a page's content is, for explaining why a page does badly in search, for writing image alt text, for suggesting internal links, or for anything that needs Google data. It cannot see those things. A title it rewrites comes from the old title, the description and the H1 alone, so treat it as a draft and check its length and meaning.
Three prompts to start with
Each one asks for a fixed answer format, so the column is easy to scan and sort. Tick URL, Title, Meta description and H1 for all three.
1. Check and fix the title
Check the title of this page against its H1 and meta description. Answer in exactly this format: Verdict: OK or FIX Reason: one short sentence New title: a title of 50 to 60 characters that says what the page is about, or KEEP if the title is fine If the title is missing, write Verdict: FIX and write a new title from the H1. Use the language of the page. Do not use quotation marks.
2. Write a meta description
Write a meta description for this page from its title and H1. Answer with the description only, in plain text, 120 to 155 characters, in the language of the title. Do not repeat the title word for word and do not promise anything the page data does not show. If the page already has a description of that length that fits the title, answer KEEP. If there is no title and no H1, answer NOT ENOUGH DATA.
3. Do title, H1 and description match?
Check whether the title, the H1 and the meta description are about the same topic. Answer in exactly this format: Match: YES, PARTLY or NO Difference: one short sentence naming what differs, or NONE Fix: one short sentence saying which of the three to change, or NONE
Models count characters loosely, so check the length of a new title or description yourself.
Cost
Your provider charges your own account for each request, at the price of the model you chose. A question in Page Detail is one request that carries every field of the page, the text included. PerfBee does not add a charge and uses no PerfBee credits. PerfBee shows counts and about how many input tokens will be sent, never an amount of money. A smaller model costs less. Start with five or ten pages to see an answer and its cost before you run a large set.
Privacy
- When you run a prompt, PerfBee sends your instruction and the page fields you ticked for each selected page to the provider you chose, using your key. When you ask a question in Page Detail, it sends your question and the fields of that page, or what it just read from the live page. Nothing is sent to a provider at any other time.
- The provider handles that text under your own agreement with it. PerfBee does not choose or control that provider.
- PerfBee stores your key encrypted and each answer of a prompt, its checked code included, with the page it belongs to. It does not store the provider's full reply.
- A question in Page Detail, the text read from the live page and the answer are not stored. The answer is held for 10 minutes so the page can show it, then deleted.
- A stored answer is deleted when you delete its prompt, the site or your account. It is also deleted when its page leaves Site Pages: when your data retention removes the scans that saw the page, when the page has been missing from your scans longer than that, or when the site's Site Pages are rebuilt without it.
Limits
- Up to 1,000 pages in one run.
- Up to 10 prompts in a workspace.
- Up to 50,000 stored answers in a workspace. Delete a prompt to free its answers.
- Answers of at most 6,000 characters. Prompts of at most 4,000 characters.
- Code of at most 6,000 characters in an answer, in up to 3 blocks.
- One run per workspace at a time.
- Ask AI: questions of at most 4,000 characters, answers of at most 10,000 characters, one question per workspace at a time.
If something goes wrong
- The provider does not accept this key. The key is wrong, revoked or from another provider. Replace it in Settings, Integrations. The card shows Key rejected by the provider until you do.
- The provider says this key has no credit left or hit a spending limit. Add credit or raise the limit in your account with the provider, then run again.
- The provider does not know this model name for your account. Check the spelling in your provider's list of models, and that your account may use that model. Use the model PerfBee filled in if unsure.
- The provider gave an empty answer or no answer for many pages. Pick a smaller or faster model, or make the instruction shorter. Some models spend part of the answer limit on thinking.
- The provider asked PerfBee to slow down. PerfBee waits and tries again by itself. A busy account with the provider can make a run slow.
- No page got an answer. A run stops when eight pages have failed and none has been answered, and it ends as failed when every page it asked failed. Fix the cause shown in the window, then run again.
- A page with only its address has nothing to ask about and is skipped. Tick more fields, or scan the site in detail so Site Pages holds titles and descriptions.
- An answer for this workspace is still being written. Someone in your workspace asked a question in Page Detail. Wait for that answer, then ask again.
- Ask AI says the live page could not be read, and no answer comes. Nothing is stored for the page either, so there is nothing to send. The sentence says why the page was not read: robots.txt does not let PerfBeeBot read it, for example, or the site took too long. Fix that, or run a detailed crawl of the site, then ask again.
- Some pages have no page text stored. Either no detailed scan has read them yet, or the page has no readable text (a page drawn only by scripts, for example). Such a page is still sent with its other fields, and a prompt that judges the text answers that it cannot judge. The window says how many such pages there are before the run starts. A detailed scan helps only in the first case.
The prompts and answers are for your own team in the dashboard and in the download. They are not in the API, the assistant tools, webhooks or live links. See also the guide.