New — Sohay now answers WooCommerce product, policy & cart questions. See how →

Article length and how content is processed

What Sohay strips out of an article before indexing it, and the length ceiling that truncates the rest.

Your article is not sent to the index as you wrote it. It is cleaned up first, and knowing what survives that step explains a few surprises.

What gets stripped

Before indexing, Sohay converts the article to plain text:

  • Block and HTML markup is removed, leaving the text and its structure — headings, lists, and tables survive as text.
  • Shortcodes are unwrapped, keeping whatever is inside them.
  • Scripts, styles, embeds, forms, and media elements are dropped entirely — including their contents.

The practical rule: anything that carries meaning visually rather than in words does not survive. An image of a price table is invisible to the chatbot. A video explaining your return policy is invisible. If something is load-bearing, put it in text as well.

The title is included alongside the body, which is part of why a title shaped like the question retrieves so well.

The length ceiling

Articles are capped at 50,000 characters by default — roughly 8,000 words. Anything past that is cut off.

Almost nothing hits this. If one of yours does, that is usually a sign it should be several articles rather than a longer limit: retrieval hands over whole articles, so a sprawling one crowds out everything else that might have answered the question.

You can change the ceiling under Sohay → KB Settings → Settings, in the Maximum article length field. It accepts values between 1,000 and 200,000 characters, and a value outside that range is clamped on save with a notice telling you what it was changed to.

For higher values than the admin allows:

add_filter( 'sohaychat_kb_max_content_length', function () {
    return 400000;
} );

The filter runs after the admin clamp, so it wins.

If an article is empty after processing

An article whose body is entirely images, embeds, or shortcode output can come out empty once cleaned, and it will not index — there is nothing to index. This shows as an error against that article on the Knowledge Base Dashboard.

The fix is to add real text, not to change a setting.

Where to go next

Writing a good Knowledge Base article for what to put in that text, and When a Knowledge Base sync fails for the errors.

Mithun B.
Mithun B.

More articles by Mithun B..

View all posts

Give your website an assistant that answers from your content

Grounded answers, a team inbox, and store-aware tools — free on WordPress.org.

Add Sohay — Free

Free plugin · You bring your OpenAI key · Works with any theme