Terms of service page: when a site needs one
Terms of service set the rules for using a site or a service. squirrel looks for the page by its multilingual URL patterns.
What terms of service are
Terms of service are the contract between a site and the people using it: what they may do, what you owe them, who owns what, and how disputes are handled.
They matter most where there is a transaction or an account: online stores, subscription software, membership sites, anything with user-generated content. A site that publishes articles and sells nothing can reasonably not have them, which is why this rule reports at info severity rather than as a defect.
What squirrel checks
The rule is site-wide. It matches each crawled page’s URL path against the multilingual terms patterns, and takes the first match. It emits a single check named terms-of-service:
- Skipped when no pages were crawled. Message:
No pages available for analysis. - Pass when a page matches. Message:
Terms of Service page found, with the URL as the value. - Info when none does. Message:
No Terms of Service page found, withConsider adding for e-commerce/SaaS sitesas the value.
The match is on the URL path only. There is no title fallback and no schema fallback, so a terms page on an unusual slug is not found. Severity info, weight 3.
How to fix it
Write terms covering what a user may and may not do, who owns the content on both sides, what you disclaim, and how disputes are resolved. Link them from the footer next to the privacy policy.
Keep them current when the practices change, and note the last revision date so a reader can tell.
| Rule ID | eeat/terms-of-service |
| Category | E-E-A-T |
| Scope | Site-wide |
| Severity | info |
| Weight | 3/10 |
Enable / disable
Disable this rule
[rules]
disable = ["eeat/terms-of-service"]Disable all E-E-A-T rules
[rules]
disable = ["eeat/*"]Enable only this rule
[rules]
enable = ["eeat/terms-of-service"]enable replaces the default ["*"], so this is the only rule selected. Leave disable out: a rule that matches any disable pattern is skipped even when enable names it. Only an enabled setting under a rule’s own [rule_options] table overrides both lists.
Related rules
- legal/terms-of-service: the compliance view of the same page.
- eeat/privacy-policy: the other legal page, which is more often required.
- eeat/disclaimers: the disclaimers that sit alongside them on YMYL sites.
- eeat/about-page: the page a reader reads before either of these.
E-E-A-T findings ship in every audit next to the SEO, performance and agent experience rules. See Fix SEO issues with AI for how an agent works through a report.
References
Check your site
Run squirrel audit https://example.com and open the E-E-A-T section of the report. The terms page is reported with its URL when one is found. Signed-out local audits need no account and cost nothing. Signed-in audits spend credits.