Content Limits
Document size limits, line break behavior, unsupported features, and preprocessing options.
Line Break Behavior
remarkBreaks by default. This means a single newline in your source renders as a line break (<br>). In standard Markdown, single newlines are ignored and only blank lines create paragraph breaks. This is the most common source of unexpected formatting when pasting content from other Markdown editors.This behavior ensures that content pasted from chat tools (ChatGPT, Claude, Slack) preserves its original line spacing without requiring double newlines.
Document Limits
Content sent via the API is limited to 100KB per request. The editor does not impose a hard character or word limit, but very large documents (over 100,000 characters) may experience slower rendering and longer export times.
- API content size: 100KB maximum per request
- Encoding: UTF-8 required
- Free plan: Up to 5 documents (the welcome template does not count toward this limit)
- Free plan: Up to 3 published pages at a time
- Pro plan: Unlimited documents and published pages
Feature Gating
Some features require a Pro plan to insert new content, but existing content always renders regardless of plan.
- Graphviz diagrams: Pro to insert, renders on all plans
- Chart.js charts: Pro to insert, renders on all plans
- Mermaid diagrams: Available on all plans, no restrictions
- KaTeX math: Available on all plans, no restrictions
- AI Quick Actions: Free gets 10 lifetime actions, Pro gets unlimited (rate limited 30/hr)
- Templates: Free gets 8, Pro gets all 62
- Downloads (PDF, Word, HTML): Pro only
What's NOT Supported
The following Markdown extensions and features are not available in Unmarkdown:
- Definition lists (term : definition syntax)
- Abbreviations (<abbr> auto-expansion)
- Custom containers or directives (beyond callouts)
- Attribute syntax ({.class #id} on elements)
- Automatic table of contents generation in content
- Automatic heading ID anchors (headings are plain text, not linkable within the document)
- Embedded media (YouTube, Twitter, Loom iframes are stripped by sanitization)
- Executable code blocks (code is display-only, never executed)
- Custom CSS injection (styling is controlled by templates)
- Slide or presentation mode
- ABC music notation
Preprocessing Options
When sending content via the API, you can enable preprocessing options that clean up and normalize the markdown before rendering:
- autoFixSyntax: Automatically fix common markdown syntax errors (unclosed fences, broken links)
- flattenHeadings: Normalize heading levels so the document starts at H1
- maxListDepth: Limit nesting depth of lists (default: unlimited)
- showCodeLabels: Display language labels on code blocks
Cross-Feature Interactions
Most Markdown features can be combined freely, but some combinations have specific behaviors:
- Math in table cells: Inline math ($...$) works in table cells
- Code blocks in callouts: Fenced code blocks work inside callouts when properly indented with the blockquote prefix
- Images in list items: Images can be placed in list items, rendered inline
- Links in headings: Headings can contain links, though the heading text is used for any auto-generated anchor
- Emoji in headings: Both emoji shortcodes and Lucide icons work in headings
- Nested callouts: Callouts can be nested inside other callouts using additional blockquote prefixes
API Quotas
API usage is metered monthly and resets on the first of each month (UTC):
- Free plan: 1,000 API calls per month
- Pro plan: 10,000 API calls per month
- Rate limits: 10 requests/second (Free), 30 requests/second (Pro)