Free
Free
No card needed
- 1 site test a month
- A monthly GEO scan: 5 questions on one AI engine
- 3 fix prompts a month, written for your builder
- 1 site
- The Persqo dashboard inside your app's admin
Persqo sends an AI visitor through your live Lovable app, checks speed, errors, SEO and how AI assistants describe you, and shows it all on an admin page in your own app. Each finding comes with a fix prompt you paste back into Lovable.
Add a Persqo admin page to this Lovable project. Persqo tests my live site your-app.example like a real visitor and shows the results, fix prompts and AI search (GEO) checks in a dashboard. You will not rebuild that dashboard: Persqo serves it, and this app only frames it for admins.
Persqo project: prj_YOUR_PROJECT
Persqo site: env_YOUR_SITE (https://your-app.example)
1. The API key, server side only
Ask me for a secret named PERSQO_API_KEY with the secure secret input (it is saved under More, Settings, Secrets, or in the connected Supabase project's secrets). I will paste a Persqo API key there. Do not use a VITE_ name, never put the key in .env, in a component or in any file the browser loads, and never ask me to paste it into chat.
2. The server code
Create the server code that calls Persqo. If this project uses TanStack Start server functions, write a server function; otherwise write a Supabase Edge Function named persqo-embed in the built-in backend. In it:
1. Check the caller is signed in and is an admin of this app (use the app's existing admin check, for example a user_roles table checked on the server). If not, return 401 or 403.
2. Read the key with Deno.env.get("PERSQO_API_KEY") in an Edge Function (or the server environment in a server function). If it is missing, return 500 with the message "Add the PERSQO_API_KEY secret".
3. Call Persqo with fetch:
POST https://persqo.com/api/v1/embed/sessions
Headers: Authorization: Bearer <the PERSQO_API_KEY secret>, Content-Type: application/json
Body: {"site_id": "env_YOUR_SITE", "platform": "lovable"}
Answer (201): {"url": "...", "expires_at": "...", "verified": true or false, ...}
4. Return only {"url": <the url from the answer>} to the page. Never return or log the key. If Persqo answers with an error, return its status and its error.message.
3. The admin page
Create an admin page at the route /admin/persqo, named "Persqo", and add it to the admin navigation if the app has one.
Each time the page opens, call the server code (supabase.functions.invoke("persqo-embed") for an Edge Function) and put the returned url in an iframe: width 100%, height calc(100vh - the header height), no border, title "Persqo", allow="clipboard-write". Do not cache or store the url: it works once and only for five minutes, so a reload asks for a new one. Show a short loading line while it loads, and the error message with a Try again button if the call fails.
4. Who can open it
If the app has no sign-in or no admin role yet, protect the page with a password instead: ask me for a second secret named PERSQO_DASHBOARD_PASSWORD. The page shows a password field; the server code compares what was typed with PERSQO_DASHBOARD_PASSWORD on the server, in constant time, before it calls Persqo, and refuses after 5 wrong tries in 10 minutes. Never put the password in client code, local storage or the URL. Hide the page from visitors who are not admins.
5. Site verification
Add this tag inside <head> of index.html (or the root layout's head), as it is served, not added later by a script, so Persqo can verify that I own the site:
<meta name="persqo-verification" content="YOUR_VERIFICATION_TOKEN">
If Lovable cannot edit the head, tell me, and I will add a DNS TXT record on your-app.example with the value persqo-verify=YOUR_VERIFICATION_TOKEN instead. Persqo frames its dashboard only on my verified domains and on Lovable's own preview hosts, so publish the change before opening the page on my own domain.
When you are done, tell me which files and functions you added, where the page is, and the name of the secret to fill in. If this project syncs with a GitHub repository, also tell me its name, so I can connect it in the Persqo page and get pull requests for file fixes. Do not add anything else to the public site.Yours has your own project and verification token, and never your API key.
Every finding comes with a fix prompt written for Lovable. You paste it, review the change in Lovable, and run the same test again from your admin.
Direct fixes: Lovable syncs with GitHub both ways, so connect the same repository and Persqo opens a pull request for file fixes (llms.txt, robots.txt). Merge it on GitHub and Lovable picks up the change. Persqo never merges. For every other fix, Open in Lovable puts the fix prompt in your project's chat; you press send.
The sign up button is hidden behind the cookie banner on phones.
Seen by the phone visitor on the home page. Expected: the button can be tapped. Actual: the banner covers it until it is closed.
On phone screens, the cookie banner covers the Sign up button on the home page. Move the banner below the first screen or make it smaller, keep the button tappable (at least 44px), and keep the current design. Then tell me what you changed.
A file fix such as a missing llms.txt can arrive as a pull request instead, when GitHub is connected.
Sign up, get the prompt for Lovable and run your first site test from your own admin. A visitor tests your live app like a new customer. No card.
Free: 1 site test a month and 3 fix prompts a month.
The page in your app frames a dashboard Persqo serves, so it stays up to date without another prompt. A Lovable Edge Function or server function, open to admins only, asks Persqo for a one-time link that works for five minutes; the browser only ever sees that link. Persqo lets only your verified domains and Lovable's own preview hosts show it.
Persqo never changes your Lovable app on its own. One-click fixes are for WordPress and Wix sites only; on Lovable, every fix is a fix prompt or a pull request you review.
Free
No card needed
$19/mo
Billed monthly. Yearly $182.40 (20% off)
$49/mo
Billed monthly. Yearly $470.40 (20% off)
$149/mo
Billed monthly. Yearly $1430.40 (20% off)
Prices in USD. One plan per Persqo account, the same plans as Persqo for WordPress. Agency covers up to 10 sites.
Product names and logos are trademarks of their owners. Persqo is not affiliated with them.
How Lovable handles secrets, GitHub and previews, from its docs: Lovable: Secrets, Lovable: GitHub integration, Lovable: Build with URL.