Content checks
The six checks Mark runs on every post, the two more on a competitor page, which ones stop a post from going to review, and where the results show.
Mark checks the text of every post for six things, and a competitor page for two more. A check either passes, warns, or fails. A failing check stops the post from going to review until you fix it. A warning never stops anything: it shows the reviewer what to look at.
The six checks
| Check | What it looks for | Can it fail? |
|---|---|---|
| Phrases this workspace excludes | Phrases on your workspace's content exclusion list | Yes, when the phrase is set to Block. A phrase set to Warn only warns. |
| Within the character limit | Text longer than the channel allows | Yes |
| Required details are filled in | Channel fields the post needs before it can go out, like a title | Yes |
| No AI-sounding words | Generic words that read as machine-written, like "leverage" or "seamless" | No, it only warns |
| Numbers trace to a claim | Percentages, amounts of money, and multipliers like "3x" | Only on a competitor page. Elsewhere it only warns. |
| No placeholders left | Notes left for the writer, like [needs source] or TODO | Yes |
A competitor page also gets two checks:
| Check | What it looks for | Can it fail? |
|---|---|---|
No tables (table) | A markdown table | Yes |
Unsourced facts are checked or cut (open_placeholder) | A fact marked [confirm: …] for a person to check | Yes |
Mark checks the body and the text fields a reader sees: title, description, excerpt, SEO title, SEO description, and first comment. On an X thread it checks every post in the thread. It doesn't check links, slugs, or alt text.
Phrases this workspace excludes
Matches are exact and ignore case. "best-in-class" matches "Best-in-class" but not "best-in-classes". A phrase limited to one channel is only checked on that channel. Retired phrases aren't checked. To see or change the list, see Content exclusions.
Numbers trace to a claim
A number counts as sourced when an active claim states the same number, in its wording or its quote. "$2.4 million" in a post matches a claim that says "$2.4M", and "40 percent" matches "40%". Mark doesn't flag plain counts like "10 customers", years, dates, version numbers, spelled-out numbers like "three times", or numbers inside links or code. To add a claim, see Claims & sources.
On a competitor page this check fails instead of warning, so a price or a percentage about a competitor can't go to review without a claim behind it.
No placeholders left
This check fails when a post still has a note meant for the writer, so it blocks submit. It looks for:
- These markers in square brackets, in any case:
[needs source],[needs citation],[citation needed],[source?],[TBD],[TK],[TODO], and any other[needs ...], like[needs a stat]. - The words
TODO,TBDandTKon their own, in capitals only. "TKO", "a todo list" and "Tk" pass.
Mark ignores markers inside code, inside a link's address, and inside a
web address. There's no override. If capitals like TK or TBD belong in
the text, such as in a brand name, put them in backticks or reword the
sentence. The post editor's checklist lists each marker it found under
No placeholders left.
No tables
A table scrolls sideways on a phone, in the preview and on your site, so a competitor page can't have one. Write the comparison as headings, short lists, and one block per plan instead. A table inside a code block doesn't count. Other post types aren't checked for tables.
Unsourced facts are checked or cut
When Mark drafts a comparison page,
it writes [confirm: …] wherever it has no source for a fact about the
competitor, like [confirm: Acme Pro price]. This check fails until each
one is replaced with a checked fact, or cut. Markers inside code don't
count. Other post types aren't checked for [confirm: …].
When a post fails a check
Submitting the post is refused, and the message names what to fix, like ""best-in-class" is blocked: Legal asked us to avoid superlatives." The post stays a draft. Remove the phrase or placeholder, shorten the text, or fill in the missing details, then submit again.
A failing check stops a post from going to review. It never stops a reviewer from approving a post that's already in review.
See the results on the review page
When a post is submitted, Mark saves the results for that revision. The review page shows them in Checks (N to review), below Claims. N is the number of checks that warned. Each warning lists the matched text and, for an excluded phrase, the reason it's excluded. Passed checks are greyed out. Warnings never turn off Approve. See Review and approve posts.
Posts sent to review before content checks shipped read "Mark didn't check this revision."
Check a draft from an AI assistant
An AI assistant connected to Mark gets the same results each time it saves a draft, and can check text without saving it. See Tool reference.
Last updated Oct 23, 2026
Publish LinkedIn Articles
Draft, check, approve, and schedule a long-form LinkedIn Article in Mark, then post it on LinkedIn yourself at its time and record its link.
Publish to your website
Connect a Payload CMS so approved blog posts, FAQ pages, competitor pages, and landing pages go to your site the way social posts go to their channels.