seomantik-outreach
Coming soon. seomantik-outreach is sold on its own, separately from the plan and content subscription. This page describes how it works so you know what to expect.
It takes one published article and finds the sites that could realistically link to it. It qualifies each site, shows you a shortlist to cut to your own standards, and drafts a personal pitch for every target you keep, with follow-ups. Blogs, SaaS, online shops and local service businesses all work.
What it does not do
- It does not promise links, placements, replies or rankings. It finds real openings and drafts honest pitches; the answer is the other site's.
- It never sends anything on its own and never schedules anything. You approve the campaign, and you say who to contact.
- It does not buy placements. When a site sells access, the shortlist shows it with its price and direction, and the decision is yours.
- Whitehat only. No link schemes, no private networks, no automated spamming.
What it needs
- The SEOMANTIK feed, connected (see Getting started).
- One article already published on your site.
- To send from your own address: your mail connected in Claude Code (Gmail, or any mail server). Without it, the drafts are still yours to send by hand.
What to expect
Starting
In your project folder, type:
Run seomantik-outreach on https://yourdomain.com/the-post/One article is one campaign, and it gets its own folder.
The questions it asks you
Once, all together, at the start:
- The article it is working for.
- The markets: the countries and languages to look in, the main one first.
- Your standards: the smallest audience worth pitching, how much spam is too much, how many sites should already link to them, and how big is too big to bother. Every standard has a sensible default, and you can change them later for free.
- Who signs the emails.
- Anyone to leave out.
After that it does not ask again until the shortlist is ready.
Where it stops for you
- The shortlist. When qualification is done, open
PLAN.html: every site it found, with its measurements. Move the six standards sliders to re-cut the list, hand-pick the rows you want, and paste the line the board gives you back into the session. It then asks how many targets to draft (by default the top 25, within your allowance). Nothing is drafted before you answer. - The campaign. Open
OUTREACH.html(orOUTREACH.md): every target with its pitch and follow-ups. Edit anything, then approve the campaign as a whole. Nothing can be sent before that approval.
A failed check also stops the run and says why.
The steps, in plain words
The session names them by number:
- Setup. Your article, markets, standards and signature.
- The article and its market. What the article is about, and the search terms that define its niche in each market.
- Finding sites. Every site in the niche that could link to it: pages about the subject, resource lists, sites that already name you, and sites that accept contributions.
- Qualifying. Each site is read and measured against your standards. Sites behind a bot wall are marked as not read, never guessed. Ends at the shortlist.
- Pitches. A personal pitch for each chosen target, built on what that site actually publishes, with two follow-ups.
- Sending and follow-ups. Only after you approve (below).
- A guest article, when a site says yes. It writes the article in the host site's voice, with its sources.
What it asks sites for
Four kinds of placement, and it names which one each pitch is:
- A guest post on a site that accepts contributions.
- A link on a named page that already covers your subject.
- A place on a resource list in your niche.
- A link where they already mention you without linking.
Partner and "list your business" pages are treated as a way to reach a site, never as a placement.
Sending and follow-ups
With your mail connected, tell the session who to contact, for example "send the first two" or "contact these three". It sends those pitches from your own address and records each one.
- Follow-ups are suggested at five and ten business days after approval. Each one goes only when you ask, and it reads your inbox first so anyone who replied is skipped.
- Replies are read back to you when you ask.
- Without a mail connection, it says so and points to a small script in the package that you can run and schedule yourself.
It never handles your mail password.
How it counts
Outreach is counted in two units:
- Campaigns: one article is one campaign, counted at its first paid step.
- Drafts: one target drafted is one draft, counted before it is researched.
Free, and worth knowing: resuming a campaign, re-cutting the shortlist with different standards, hand-picking, redrafting a target already drafted, opening the same article again (however the address is written) and sending.
Every run starts by printing your campaigns used and allowed, drafts per campaign and the reset date. A refused step spends nothing, and the message says which limit was reached and when it resets.
A deliberate second search for sites on the same article counts as a new campaign, and it asks you first.
Every file it writes
In the campaign's folder (outreach-<article>/):
PLAN.html: the shortlist board: every site found, its measurements, the standards sliders and your hand-picks.PLAN.mdis the same as a document.OUTREACH.html: the campaign: each target with its pitch and follow-ups.OUTREACH.mdis the same as a document.project.config: the campaign's settings from setup.RUN-NOTES.md: what the run did and why.data/profile.json: the article and its niche.data/lineup.json: the search terms used to find sites.data/pool.json: every site found.data/opportunities.json: the qualified sites with their measurements.data/campaign.json: the chosen targets, their pitches, and your approval.data/attrition.json: every site removed along the way, with the reason. Nothing is dropped silently.data/spend.json: a record of the data calls the run made, as calls.data/raw/: every response the feed returned, saved first. It lets a campaign resume without paying twice. Do not edit it.send-state.jsonandreplies/: after your first send, what was sent to whom and when, and the replies read back.guestpost-<site>/: when a site accepts a guest post, the article (content/<slug>.final.md) and its sources (content/<slug>.sources.json).
When something goes wrong
Every draft is blocked and shows [YOUR NAME]. The signature was left for later. Give it in the session and the drafts clear.
"Approve the campaign first." You asked to send before approving. Open OUTREACH.html, review, and approve.
It stopped at setup. The feed is not connected. See Getting started.
It refuses to run from a folder named backup, old or copy. That folder holds a stale copy of the skill. Use your current project folder.
Two articles in one folder. Each article needs its own folder, or the second campaign overwrites the first one's work.
A site shows "not read". It blocked automated reading. It stays on the list, marked, and is never judged on guesses.
The counts look small. Every count is a floor: search results come back in small pages, so there may be more sites than it found.