Step 01 / 04
Scan
Point it at a codebase, a live URL, or both. Orino resolves your framework and reads routes, metadata exports and build output the way a crawler never could.
reading source…
SEO + GEO audit engine — free in your terminal
Orino audits the signals that decide whether Google ranks you and whether AI engines cite you — then writes the fix and opens the pull request. Rules, not a language model: the same site gets the same score, every run.
$npx orino-cli auditGet the full report first — free, no account. Sign in only when you want Orino to open the pull request that fixes it.
SEO SCORE
DRAG IT · CLICK TO RE-SCORE
Search happens in two places now. Google ranks your pages and AI engines quote them. Orino audits both surfaces with one deterministic command.
Rule-based checks that read your source and your live HTML. No crawl quotas, no black-box scores — and the free CLI never asks you to log in.
Orino reads your codebase and your live URL, runs every check in parallel and hands back a weighted score, with the file, the finding and the fix for anything that fails.
$ npx orino-cli audit
Detected Next.js (App Router) · 54 checks queued
The CLI runs locally. The only network request is to the URL you choose to audit.
Rules, not a language model. Scores never drift between runs, so they belong in CI.
Point it at the repo — Orino works out the framework and applies the checks that fit.
robots · sitemaps · canonicals
Can engines reach every page you care about? Robots rules, XML sitemaps, canonical tags, redirect chains and status codes.
Can engines reach every page you care about? Robots rules, XML sitemaps, canonical tags, redirect chains and status codes.
Titles and descriptions on every route, Open Graph and Twitter cards, with length and uniqueness rules applied per page.
JSON-LD presence and validity — Organization, Article, FAQ and breadcrumbs, matched against what each page type needs.
LCP, CLS and INP, render-blocking assets and image weight — the speed signals that gate rankings.
Heading order, alt text, internal linking and content depth — including the H1 a crawler actually receives.
GPTBot, ClaudeBot and PerplexityBot access, llms.txt, and whether your content survives without JavaScript.
Framework config, route structure and client-only rendering traps that hide finished pages from every crawler.
Build it yourself · takes 20 seconds
No sign-up to try it. Pick your stack, point it at a URL, choose the output — and copy the exact command. It runs today, and the report is yours to keep.
1 · Your framework
2 · Live URL (optional)
Leave blank to audit the local project instead.
3 · Output
Your command
$ npx orino-cli auditThe CLI stays free · connect a repo only when you want the PRs
Connect your GitHub repo. Orino writes the fix, opens a pull request, and you review it like any other teammate’s contribution.
Step 01 / 04
Point it at a codebase, a live URL, or both. Orino resolves your framework and reads routes, metadata exports and build output the way a crawler never could.
reading source…
Step 02 / 04
See exactly what's broken and why. Every finding links to the fix guide. Select what you want fixed.
Step 03 / 04
Orino writes the actual code. Not a suggestion, the real diff, following the correct pattern for your framework.
export const metadata = {
- title: "Home",
+ title: "Meridian — Architecture studio in Oslo",
+ description: "Practice, projects and contact.",
}
Step 04 / 04
A pull request opens on a new branch. Nothing touches main until you approve it.
Orino SEO fixes (3 issues) #42
3 commits · orino-fixes bot · orino/seo-fixes → main
Scanning is always free · fix PRs are a £6/mo supporter perk
Orino rescans on a schedule you choose and emails you the moment something breaks.
Daily, weekly, or monthly. Orino checks your site automatically so you don't have to remember to.
If your score drops below a threshold you set, you get an email before it becomes a problem.
Generate a public link to any scan. Send it to a client, drop it in a PR, no login required to view.
The part you can't see
SEO and GEO problems fail silently. Nothing breaks, nothing errors — you just slowly stop showing up. Here's what runs in the background while a site goes un-audited.
A missing sitemap, a stray noindex, a canonical pointing the wrong way — and whole routes drop out of the index. You don't get an error. You just don't rank.
If GPTBot is blocked or there's no llms.txt, AI engines can't read you — so when someone asks, they cite a competitor who did the boring parts right.
A deploy strips your metadata or tanks your LCP, the score slides for weeks, and the first you hear of it is traffic that quietly stopped coming.
One command tells you which of these is happening to you right now.It's free to find out.
Orino is a personal project, not a company chasing tiers. Every audit, every score, every scan is free for everyone — no limits, no trial. If you’d like Orino to write and ship the fixes for you, £6/month covers the hosting and AI cost behind that, and keeps the whole thing running.
Free
Everything you need — free, forever
Pro
Support the project, keep a few extras
Everything in Free, plus:
Free stays free, forever · Pro is billed monthly · cancel anytime
No AI guesswork. Just the SEO and GEO issues that decide whether you rank — and whether AI engines quote you.
$npx orino-cli auditQuestions about Orino, partnership ideas, or just want to say hello? Drop us a line. No ticket queue, no chatbot.
support@bynaree.dev