LaTeX and Math Equations in Substack: What Works and What Doesn't
If you write about economics, machine learning, physics, or finance, equations aren’t optional. Substack is the default home for many technical writers, and math is still one of its roughest edges.
The complaint is loud and consistent. One widely shared post asked when Substack will “finally enable inline LaTeX equations,” calling it “by far the worst limitation for technical writers.” Others publishing technical write-ups say Substack supports code blocks but not basic tables.
Here’s what you can do today.
What Substack Supports
Substack documents a block-level LaTeX insert, not inline math. The help article How do I add equations to my Substack post? (updated April 2026) says: on a draft, open the editor toolbar, choose More, then LaTeX. Click the block, enter the source, and save. The equation is placed in the body as its own block, which is the right tool for a display equation:
\hat{\beta} = (X^\top X)^{-1} X^\top y
What that article does not describe, and what writers keep asking for, is inline math: a variable like $\alpha$ or an expression like $O(n \log n)$ sitting inside a sentence. There is no documented inline LaTeX mode, so $...$ delimiters in a paragraph show up as literal dollar signs. Writers were still describing the block as display-only, and asking for inline support, in 2026.
The control lives under More in the toolbar, not a separate insert menu. If a later editor moves it, check that help article before assuming the block is gone. Writers also report that the rendered block can show up as an image in email and in dark mode, so treat the web preview as a starting point and check a real inbox.
Workarounds for Inline Math
1. Unicode Symbols
For simple expressions, Unicode covers a lot: α, β, σ, μ, Δ, ∑, ∫, √, ≤, ≥, ≠, ≈, ∞, ², ³, ₁, ₂. Writing “σ² = 0.04” or “x₁ ≤ x₂” reads fine in email and on the web, and screen readers can read it.
2. Inline Code Formatting
For variable names and short formulas, inline code (n_samples, O(n log n)) gives clear visual separation. It’s not typeset math, but it’s unambiguous.
3. Promote the Expression to a Display Equation
If an inline expression matters enough to typeset, it may deserve its own line. Rewrite the sentence so the equation sits in a LaTeX block right after it, then refer to it.
4. Equations as Images
For complex notation, render the equation as an image (from a LaTeX editor or a screenshot of a typeset PDF) and upload it. This looks consistent in every email client, but it’s not editable, and you need to write alt text that spells out the formula.
Mind the Email
Your post goes out by email as well as the web. Whatever method you use, send yourself a test email and check:
- Does the equation render in Gmail and Apple Mail?
- Is it readable on a phone screen without horizontal scrolling?
- If it’s an image, is the alt text meaningful?
Drafting Technical Posts in Markdown
Many technical writers draft in Markdown (Obsidian, VS Code, Typora, Jupyter), where $...$ math renders locally. When moving that draft to Substack:
- Text, headings, lists, links, and code blocks convert cleanly with a Markdown-to-rich-text tool like DownStack.
- Tables, which Substack also lacks, can be turned into hosted images automatically by DownStack. See how to format tables in Substack.
- Math is not converted by DownStack. Plan to re-insert equations with Substack’s LaTeX block, or use the Unicode and image workarounds above.
For code-heavy posts, see our guide to code blocks in Substack.
Key Takeaways
- Substack offers a block-level LaTeX insert for display equations.
- There is no inline LaTeX, and technical writers have been asking for it publicly.
- Use Unicode symbols or inline code for simple inline math, LaTeX blocks for key equations, and images for complex notation.
- Always test equations in a real email on a phone.