How does MathSolver markup send a math expression to a website?

The Citead team, updated

In short. SolveMathAction.target provides the endpoint placeholder, while mathExpression-input names the expression sent to that endpoint.

Definition: In MathSolver structured data, SolveMathAction.target identifies the URL entry point for solving an expression. The mathExpression-input annotation names the required input that Google sends to the website, using the same name as the placeholder in the target URL.

Key facts

  • Google's Math Solver documentation describes mathExpression-input as a placeholder for a mathematical expression sent to the website.
  • The documented target example is https://mathdomain.com/solve?q={math_expression_string}, with required name=math_expression_string as the input annotation.
  • Google says the expression string can use formats such as LaTeX, Ascii-Math, or expressions written with a keyboard.
  • A SolveMathAction can lead to a mathematical explanation, such as a step-by-step solution or graph.
  • Schema.org defines SolveMathAction as an action that takes a math expression and directs users to a page potentially capable of solving or simplifying it.

What does target identify?

target is the destination entry point for the action. In Google's example, the path is /solve and the query parameter is q. The value inside braces, {math_expression_string}, is the documented placeholder for the expression. Google's type definition describes potentialAction.target as the URL target entry point and says that the property accepts a string to represent the expression being solved.

Schema.org gives target an expected type of EntryPoint or URL, and describes it as indicating a target entry point or URL for an action in its SolveMathAction definition. The action is attached to the solver through potentialAction.

How does mathExpression-input bind the value?

The input annotation supplies the name that accompanies the placeholder. The two values in Google's example are:

{
  "@type": "SolveMathAction",
  "target": "https://mathdomain.com/solve?q={math_expression_string}",
  "mathExpression-input": "required name=math_expression_string"
}

Google describes mathExpression-input as a placeholder for a mathematical expression that is sent by Google to the website. The expression can be simplified, transformed, or solved for a specific variable. The documentation also says that, for some problem types, math_expression_string carries both the problem type and its parameters. Its examples cover derivatives, integrals, and limits.

Can one solver expose more than one destination?

Yes. Google documents a home page with two SolveMathAction objects under potentialAction: one target is /solve for polynomial equations and the other is /trig for trigonometric equations. Both use the same mathExpression-input annotation, while eduQuestionType distinguishes the problem type handled by each target. Google also shows one action serving polynomial equations and derivative problems through an array value for eduQuestionType.

The Schema.org MathSolver definition describes a math solver as a tool capable of solving a subset of mathematical problems. Google's documentation places this structured data on the site's home page and uses url for the MathSolver URL, separately from the action's target entry point.

What should be checked on the website?

The target must lead to a page that can provide the mathematical explanation associated with the expression. Google's technical guidelines say the solution and step-by-step walkthrough for the initial problem must be accessible after users reach the site from the Google feature; additional content may be behind a login or paywall. The same documentation asks publishers to validate the markup with the Rich Results Test and use URL Inspection on deployed pages.

The opened documentation describes the placeholder and input name, but does not specify the exact URL encoding or HTTP method for the resulting request. The implementation therefore needs to handle the expression string at the documented target entry point.

FAQ

What is the placeholder in a MathSolver target URL?

The placeholder is {math_expression_string} in Google's documented target pattern. It marks the expression value associated with the required input name math_expression_string.

Does target contain the expression itself?

The documented target contains a placeholder rather than a fixed expression. The mathExpression-input annotation identifies the required named input that Google sends to the website.

Can a solver have separate URLs for different problem types?

Yes. Google shows separate SolveMathAction objects for polynomial and trigonometric equations, with different target URLs and eduQuestionType values.

Sources

  1. Google Search Central, "Math solver (MathSolver) structured data", 18 December 2025
  2. Schema.org, "MathSolver", 16 September 2026
  3. Schema.org, "SolveMathAction", 16 September 2026

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark