Features · what to fix
What to fix this week, worst leak first
You can stare at a dashboard for an hour and still not know what to do on Monday. Skald writes an SEO to-do list from your own server log: old pages people still ask for, server errors, Markdown copies AI cannot get, a missing sitemap, a page most visits leave at once.
To do now is the list at the top of Overview › Insights. Each item is one problem the site has now, with its proof (the figure and its days), what fixes it, and the measure Skald re-checks every day once you mark it done. It is built only from figures Skald has already counted twice.
30-day free trial · no card · we set it up within one working day · free to self-host
- 1Send old pages somewhere usefulLost traffic
- 2Fix the server errorsBroken
- 3Give AI the Markdown copies it asks forAI
- ·Sitemap: 2 asks, under its line of 3no to-do
- 4Make /blog/fall-launch lead somewhereLeaving
Sample site. Each kind of leak has its own line; a leak past it becomes a to-do, numbered in Skald's fixed order. The sitemap leak stays under its line, so it is not on the list.
[01] one to-do
Each fix comes with its proof and its next step
A to-do is useless when it only says "improve SEO". Each one in Skald names the problem, gives the figure and the days behind it, says what fixes it, and says how Skald will measure the fix.
Two terms on the list: a Markdown copy is a plain-text version of a page at the same address ending in .md, which some AI fetchers ask for. A sitemap is the file that lists your pages for search engines and AI crawlers, such as /sitemap.xml.
The words on the sheet are the ones Skald writes, with sample figures. "Search engines" means the search crawlers (Googlebot, bingbot and the rest); "AI" means assistants fetching for someone's question and AI crawlers.
1Send old pages somewhere usefulLost traffic
Proof: 9 old page addresses answered 'not found' from 25 Sep to 24 Oct: people asked 18 times, search engines 21 times, AI 7 times.
Do: Redirect each to the closest live page, or answer 410 gone. Site > Not found suggests the page and gives the server line to copy, most asked first.
Skald will check: the not-found answers to the same addresses, on the days after you mark it done.
Link: #overview/insights?todo=lost-pages · CSV: old-pages.csv
Sample to-do, in the words Overview › Insights shows. The leaving to-do's id is a hash of the page, so no path goes in the link.
Four leaks reach their line: four to-dos. The sitemap has 2 asks, under 3, so it waits.
Sample months. The leaving bar is visits; it also needs 80% of them gone after that one page, and no form sent.
[02] when it is worth a to-do
A to-do list that stays short in a quiet month
Two lost visits are noise; forty are a leak. Each kind needs its figure past one line, all kept together in Skald's code, before it becomes a to-do.
- 10 asks for old page addresses, people, search engines and AI together
- 5 server errors (5xx)
- 5 AI asks for the
.mdcopy of a live page - 3 crawler asks for a sitemap file that is not there
- 20 visits that started on one page, 80% of them gone after it, no form sent; at most 3 such pages, the most visited first
The window is the last 30 days with checked figures, ending yesterday; today is still being counted, so it waits. The leaving check reads the stored visits, which are kept 7 days unless your server keeps more.
[03] did the fix work
Mark it done, and the log says whether it held
A tick usually ends a to-do. Here a done item moves to "Done, and did it work?" and is measured again on every whole day after the day you marked it, with the same measure that raised it.
A day with no checked figures (not recorded, or withheld) does not count. For the leaving kind Skald waits for 20 visits after the mark, and says "too few to judge yet" before that.
25
October · marked done
Send old pages somewhere useful
Waiting
Marked done 25 Oct. Re-checked once a whole day has passed after it.
Sample re-check of the old-pages to-do, in Skald's own words. It counts the not-found answers to the same addresses that failed before the mark.
[04] hand it on
Send the fix to whoever can make it
The person who reads the dashboard is rarely the one who edits nginx. Every to-do carries what the developer needs, in a form they can open without learning Skald.
Show the list, or download it
The rows behind the to-do, as a table, and the same rows as a CSV file. A list longer than 1,000 rows says so; the CSV has the first 1,000.
Copy link
The address of this to-do with its list open, such as
#overview/insights?todo=lost-pages. A teammate without rights to the site sees "not available to you".Send to team
Mails one to-do to a confirmed member of the site's team, with its rows as a CSV and the link, through your install's own mail server. At most 10 sent an hour.
Open in its tab
Old pages and Markdown open Site › Not found, errors open Site › Health, a leaving page opens Traffic › Pages on that page.
Mark done, or not now
Owners and admins mark; viewers see the same list. Not now folds an item away until someone puts it back. Marks are kept by Skald, so the whole team sees one list.
In the 01:00 summary
Open to-dos reach each person who gets the site's security alerts in one summary mail a day at 01:00, at most 10 lines a site. Done and not-now items stay out. We printed the first summary with
summary-mail --dry-runon our own server before it went out; it showed every site's links opening the first site's dashboard, fixed the same day in 2.36.1 (Skald's 2.36.1 release notes (25 Oct 2026)).
Why one mail a day, and not a mail per item, is told in the note on alert fatigue. Send to team shows only when a mail server is set in Settings › Mail and the team has a confirmed member; otherwise the page says why.
[05] a second count
A to-do the second count doubts is left out
A wrong to-do sends someone to fix a page that was fine. So a separate piece of code counts every figure again from the stored days, with its own reading of each address, and shares only the name lists and the lines above.
When the two counts disagree, that to-do is not shown, and the list names it, for example: "Fix the server errors" is left out: the second count disagreed.
The re-checks after a mark are counted twice the same way. More on the method in analytics data accuracy.
What the list leaves to you
- It knows five kinds of problem, all from the log and your sitemap: old pages, server errors, Markdown copies, a missing sitemap, a page most visits leave at once. It does not read your pages' words or judge their content.
- The lines are fixed in Skald's code; there is no setting to move them.
- Skald changes nothing on your site or server. It says what to do and checks the result.
- Marks and Send to team need accounts (signing in). Without them the list shows, and says why nothing can be marked.
- The list covers the whole site. Filters and page groups apply to the cards below it, not to the to-dos.
keep reading
More on SEO to-do list
questions
SEO to-do list FAQ
Straight answers, including what Skald does not do.
What goes on Skald's to-do list?
Five kinds of problem, each from your server log and sitemap: old page addresses people, search engines or AI still ask for that now answer 404 or 410; server errors (5xx); AI asking for the Markdown copy of a page you have and getting 'not found'; a sitemap file crawlers ask for that is not there; and a page many visits start on where most visits (80% or more) leave after that page and no form is sent.
Why is a problem missing from my list?
Each kind needs its figure past a line before it becomes a to-do: 10 asks for old pages between them, 5 server errors, 5 AI asks for Markdown copies, 3 crawler asks for a missing sitemap, or 20 visits to one page with 80% leaving and no form sent. A to-do the second count disagrees with is left out and named, and one marked Not now is folded away until someone puts it back.
How does Skald know a fix worked?
When you mark a to-do done, Skald measures it again on every day after the mark that has checked figures, with the same measure that raised it. It then says, for example, 'Fixed: 0 not-found answers since 25 Oct' or 'Not yet: 5 not-found answers since 25 Oct'.
Can I send a to-do to my developer?
Yes. Send to team mails one to-do to a confirmed member of the site's team, with its rows as a CSV and a link to it, through your install's own mail server. You can also download the CSV or copy the to-do's link. Owners and admins can send and mark; viewers see the list.
Does Skald fix the problems for me?
No. Skald changes nothing on your site or web server. It says what to do, gives the rows and, for old pages, the server line to copy, and then checks the log to see whether the fix held.
Will Skald mail me the to-dos?
Yes, if you get the site's security alerts: open to-dos are part of the one summary mail each person gets at 01:00, with at most 10 lines a site. To-dos marked done or Not now are left out.
$ tail -f access.log | skald
See what AI does with your site. Free for 30 days.
No card. We set up hosted Skald for you within one working day, or you self-host it free. Every line of your log, sorted and added up.