Skip to content

SEO Strategy

Version: 1.0 · Last updated: 2026-03-01 Primary market: United States (English-first) Goal: Rank top-3 for anonymous relationship review queries; attract dating app, background-check, and relationship-coaching advertisers.


SiteStatusPositioningWeakness / Opportunity
DatingPsychos.comDEAD — domain expired Jan 26, 2025Anonymous date safety reports21-year-old domain just vacated. Traffic vacuum is live NOW.
TheDirty.comOrganic dead (72% Direct / 28% Google)Gossip/cheater shaming (broader scope)Google effectively deindexed it. Niche is open.
DontDateHimGirl.comPivoted away ~2010Early anonymous cheater database (2005)No longer a direct competitor; left niche wide open
LiarsCheatersRUs.comSignificantly diminishedHigh-volume anonymous partner reportsNo structure, legal exposure, extortion-adjacent removal model
CheaterBuster.comActive — ~145K visits/monthAI tool to find Tinder/dating app cheatersDetection tool, not review site — low overlap with Trystpilot intent
RateMyEx.onlineActive but very smallAnonymous ex reviewsClosest conceptual competitor; no structured ratings; no brand scale
cheater.reportActive (reduced)Cheater-specific reporting toolSingle-purpose, no rating dimensions, no content depth
CheaterVilleDefunctSearchable cheater databaseClosed due to legal/ethical issues
Cheaterland.comOffline (post-2021)Anonymous allegations + paid removalFTC/legal pressure killed it

The niche is in active vacancy. DatingPsychos (21 years old) expired Jan 2025. TheDirty’s organic is dead. DontDateHimGirl pivoted. No active competitor offers:

  • Multi-dimensional rating system (communication, trust, respect, compatibility, empathy)
  • Trustpilot-style structured layout with a reputation index
  • Both positive AND negative reviews — not just exposé-style reports
  • Professional, moderated design that builds advertiser credibility
  • City + relationship-type landing pages (completely unopposed)
  • Blog content strategy targeting top-of-funnel relationship keywords

Tier 1 — Head Terms (Broad, High Competition)

Section titled “Tier 1 — Head Terms (Broad, High Competition)”

Target primarily via home page, brand, and profile page depth.

KeywordIntentTarget Page
anonymous relationship reviewsInformational / navigationalHome
date reviewsInformationalHome
rate my exNavigationalHome + Submit
relationship reputationInformationalHome
partner reviewsInformationalHome + Profile
ex partner review siteNavigationalHome
dating safetyInformationalBlog
relationship red flagsInformationalBlog
cheater reportNavigationalHome
anonymous date ratingInformationalHome + Profile

Tier 2 — Mid-Tail (Specific Intent, Medium Competition)

Section titled “Tier 2 — Mid-Tail (Specific Intent, Medium Competition)”

Target via blog content and profile category pages.

KeywordIntentTarget Page
how to research someone you’re datingInformationalBlog post
anonymous partner rating systemInformationalHome / How it works
review my ex anonymouslyTransactionalSubmit
relationship compatibility ratingsInformationalBlog + Profile
dating red flags checklistInformationalBlog post
how to report a cheater onlineInformationalBlog post
is [name] trustworthy to dateNavigationalProfile
long distance relationship reviewNavigationalProfile category
situationship reviewNavigationalProfile category
date safety checkInformationalBlog / Home
relationship trust scoreInformationalProfile
communication in relationships ratingInformationalBlog + Profile

Tier 3 — Long-Tail (High Intent, Low Competition)

Section titled “Tier 3 — Long-Tail (High Intent, Low Competition)”

Target via UGC profile pages and blog posts. These are where ranking opportunities compound at scale.

Keyword PatternTarget
[first name] [city] relationship reviewsProfile page
[first name] [last initial] [city] reviewsProfile page
[city] dating reviews anonymousCity landing page (future)
how to anonymously review a bad dateBlog post
signs of emotional unavailability in datingBlog post
how to check if someone is a serial cheaterBlog post
relationship communication ratingBlog post
what is a good compatibility score in relationshipsBlog post
anonymous ex review site that worksHome / Blog
best free anonymous date review siteHome
write a review about my ex for freeSubmit page
KeywordStrategy
TrystpilotBrand — claim Google Business, structured data
trystpilot.xyzBrand
trystpilot reviewsBrand + UGC
dontdatehimgirl alternativeCompetitor displacement
sites like liarscheatersCompetitor displacement
dating psychos alternativeCompetitor displacement

Title: Trystpilot — Anonymous Relationship Reviews. Search by Name & City.
Meta: Trystpilot is the anonymous relationship review platform. Search past partner
reviews by name and city. Honest ratings on trust, communication, respect &
compatibility — 100% free and anonymous.
Title: {Alias} Reviews ({City}) — {Rating}/5 Stars | Trystpilot
Meta: Read {N} anonymous relationship reviews for {Alias} in {City}. Rated
{Rating}/5 on Trystpilot. Ratings cover communication, trust, respect &
compatibility.
Title: Relationship Advice, Dating Tips & Red Flag Guides | Trystpilot Blog
Meta: Free relationship advice, dating safety tips, red flag guides, romance ideas,
and compatibility insights from the Trystpilot team. Evidence-based guidance
for modern dating.
Title: {Post Title} | Trystpilot Blog
Meta: {Post excerpt — max 155 chars, must include primary keyword naturally}
Title: Write an Anonymous Relationship Review | Trystpilot
Meta: Submit a free, anonymous review of a past romantic partner on Trystpilot. Rate
communication, trust, respect & compatibility. No account required — 100% anonymous.
Title: {Page Name} | Trystpilot
Meta: {Short description of the legal document purpose}
Robots: index, follow (trust signals for Google E-E-A-T)
  • Max 60 characters (truncation prevention)
  • Primary keyword in first 50 characters
  • Brand at the end: | Trystpilot
  • Never duplicate titles across pages
  • Dynamic profile/blog titles pull from DB
  • Max 155 characters
  • Must contain primary keyword naturally
  • Must include a value proposition or CTA
  • Dynamic for profile/blog pages; static for core pages
  • Avoid passive voice

/ Home
/profile/{alias-slug} Profile page (slug = alias + city hash)
/blog Blog index
/blog/{slug} Blog post
/submit Write review (conversion)
/legal/terms Terms of Service
/legal/guidelines Community Guidelines
/legal/content-policy Content Policy
/legal/removal Removal Request
/legal/dmca DMCA Portal
/legal/law-enforcement Law Enforcement
/sitemap.xml Auto-generated
/robots.txt Crawl directives
/city/{city-slug} City landing pages — "New York dating reviews"
/category/{type} Category pages — "long-distance relationship reviews"
/blog/category/{slug} Blog category archive pages
/faq FAQ — structured data opportunity
  • Lowercase, hyphen-separated slugs only
  • No query strings in indexed pages (pagination uses ?page=N which is canonicalized)
  • Profile slugs are unique alias + city combinator
  • Blog slugs are human-readable keywords from title

  1. Exactly one <h1> — primary keyword, above the fold
  2. <h2> for major sections — secondary keywords
  3. <h3> for sub-sections — supporting terms
PageH1 TextNotes
Home”Anonymous Relationship Reviews”Must be in HeroSection component
Profile{Alias Name}Already in ProfileHeader component
Blog index”The Trystpilot Blog”Currently a <span> — should be <h1>
Blog postPost titleCorrect — <h1>{post.title}</h1>
Submit”Write an Anonymous Review”Verify in SubmitForm component
Legal pagesPage titleCorrect

The home page has no semantic <h1>. The HeroSection component likely uses a styled heading but it must be a proper <h1> tag for crawlers. Action required: Audit HeroSection component and ensure the primary heading is an <h1> element.


6. Structured Data (JSON-LD) Implementation

Section titled “6. Structured Data (JSON-LD) Implementation”
Schema TypeLocationPurpose
OrganizationRoot layout (app/layout.tsx)Brand identity for Google Knowledge Panel
WebSite + SearchActionRoot layout (app/layout.tsx)Enables Google Sitelinks search box
Person + AggregateRatingProfile pages (app/profile/[alias]/page.tsx)Star ratings in Google search results
BreadcrumbListProfile pagesNavigation path
ArticleBlog posts (app/blog/[slug]/page.tsx)Article rich results
BreadcrumbListBlog postsNavigation path
Schema TypeTarget PagePriority
FAQPageFAQ / Legal pagesHigh
ReviewIndividual review cardsMedium
LocalBusiness(N/A — not applicable)
WebPage + SpeakableHigh-traffic blog postsLow

Test all schemas at: https://search.google.com/test/rich-results


ItemImplementation
robots.txt/public/robots.txt — blocks /moderation, /login, /signup, /api, /search
Security headersnext.config.ts — X-Frame-Options, X-Content-Type-Options, Referrer-Policy, etc.
Sitemap/app/sitemap.ts — dynamic, covers home + blog + profiles + legal
Canonical URLsAll key pages — prevents duplicate content from pagination
OpenGraph tagsAll public pages — controls social share previews
Twitter CardHome + blog posts — summary_large_image
Robots metaModeration, search, report, login pages — noindex, nofollow
ISR / SSGHome: 300s · Blog: 300s · Blog posts: 600s · Profiles: on-demand
Image optimizationNext.js <Image> component used throughout
HTML lang attributeDynamic — matches detected locale (en, de, es, fr, pt)
AnalyticsVercel + Cloudflare — dual-redundant tracking
Structured dataOrganization, WebSite, AggregateRating, Article, BreadcrumbList
ItemAction RequiredPriority
Home page <h1>Audit HeroSection component; ensure heading is <h1> not <div>/<span>High
OG default imageCreate /public/og-default.png (1200×630px) — referenced in layout.tsxHigh
Blog placeholderCreate or source /public/blog-placeholder.webp if not already presentMedium
profile/create metadataAdd noindex metadata to /app/profile/create/page.tsxMedium
City/category landing pagesBuild /city/[slug] and /category/[slug] pagesHigh (Roadmap)
hreflang tagsAdd for DE/ES/FR/PT when multi-language URLs are implementedLow
Google Search ConsoleVerify domain ownership; submit sitemapHigh (ops)
Core Web VitalsRun Lighthouse audit; target LCP < 2.5s, CLS < 0.1, FID < 100msMedium
FAQ structured dataAdd FAQPage schema to /faq or legal pagesMedium

Priority Blog Posts to Publish (Keyword-to-Content Map)

Section titled “Priority Blog Posts to Publish (Keyword-to-Content Map)”

Relationship Advice (targeting broad informational queries)

Section titled “Relationship Advice (targeting broad informational queries)”
  1. “10 Relationship Red Flags You Shouldn’t Ignore” — targets: relationship red flags, warning signs in dating
  2. “How Emotional Availability Affects Relationship Success” — targets: emotional availability, empathy in relationships
  3. “Communication in Relationships: The Complete Guide” — targets: communication in relationships, how to communicate with partner
  4. “What Is Relationship Compatibility? A Practical Framework” — targets: relationship compatibility, compatible partners
  5. “How to Know If You Can Trust Someone You’re Dating” — targets: trust in relationships, trustworthy partner signs
  1. “How to Research Someone Before a First Date (Safely & Legally)” — targets: how to research someone you’re dating, date safety
  2. “The 5 Dating Safety Tips Every Person Should Know” — targets: dating safety tips, safe dating practices
  3. “How to Spot a Serial Cheater Before It’s Too Late” — targets: how to spot a cheater, serial cheater signs
  4. “What to Do After a Bad Date: Processing & Moving On” — targets: after a bad date, dealing with bad dating experiences
  5. “Anonymous Dating Reviews: Why Transparency Matters” — targets: anonymous dating reviews, relationship transparency

Platform-Adjacent (build topical authority)

Section titled “Platform-Adjacent (build topical authority)”
  1. “Understanding Your Partner’s Reputation Score on Trystpilot” — targets: relationship reputation score, dating reputation
  2. “How Trystpilot Protects Your Privacy” — targets: anonymous review privacy, trystpilot privacy
  • Minimum 800 words for informational posts
  • Include primary keyword in H1, first 100 words, and naturally 2–3 more times
  • Include secondary keywords in H2/H3 headings
  • Add internal links to relevant profile pages and other blog posts
  • Excerpt must be 120–155 chars and keyword-rich (used as meta description)
  • Cover image at 1200×630px (OG-safe aspect ratio)

FromToAnchor Text
Home hero/submit”Write a free review”
Home hero/profile/[top-rated]“Top rated this month”
Blog posts/submit”Write an anonymous review”
Blog postsRelated profiles”{Alias} in {City}” (contextual)
Blog postsRelated blog postsTopically relevant
Profile pages/submit”Write a review for {Alias}“
Profile pages/blog/dating-tips”Dating safety tips”
Legal pages/legal/removalCross-link removal-adjacent pages
  • Avoid generic anchor text (“click here”, “read more”)
  • Every blog post should link to at least 2 other pages
  • Profile pages should encourage review submission (conversion loop)
  • Never link to noindex pages from indexed content

Source TypeSpecific TargetTacticTarget Page
Legal / ORM firmsminclaw.com, defamationdefenders.com, optimizeup.comThese firms write detailed competitor analyses. Pitch Trystpilot as the “responsible, alias-only” successor to DatingPsychos/TheDirty. They will reference it in “What is [site]” content.Home + Removal page
Infidelity recovery blogschumpladyblog.com (high DA), AffairRecovery.com (DA 37), EmotionalAffair.org (DA 33)Write “what to look for in a new partner after betrayal” — earn in-content citations from recovery communitiesBlog posts
Dating advice aggregatorsDatingAdvice.com, YourTango.com, SheKnows.com, Marriage.comRoundup-style “best dating safety tools” pitches; guest posts on red flags / communicationBlog + Home
Press / digital mediaHuffPost, Marie Claire, Newsweek, The Globe and MailThe “Trustpilot for relationships” story has been covered twice (DDHG 2007, CheaterVille 2013) — Trystpilot is the 2025 version. Pitch proactively.Home
Redditr/dating, r/dating_advice, r/relationship_advice, r/Infidelity, r/survivinginfidelityGenuine value-add participation; link to educational blog posts when topically relevant. Never link to profile pages.Blog posts
QuoraRelationship safety, dating red flag, partner research questionsAnswer questions; reference Trystpilot as a resource where relevantHome + Blog

Tier 2 — Mid Authority (Build Over Time)

Section titled “Tier 2 — Mid Authority (Build Over Time)”
Source TypeTactic
Niche directoriesSubmit to “alternative dating sites” or “dating safety tools” directories
University researchPartner with researchers studying online dating behavior; get cited
YouTube collaborationPartner with relationship advice YouTubers for platform mentions
Wellness / self-help sitesRelationship advice content syndication
Local newsCity-specific stories using aggregated (anonymized) data from platform
Source TypeTactic
Forum linksParticipate in dating/relationship forums with value-first presence
Social profilesConsistent brand presence on X (Twitter), Instagram, TikTok
HARO / QwotedRespond to journalist queries about dating, relationships, online safety
Tool listings”Best dating safety tools” roundup articles
  • Brand (“Trystpilot”): 40%
  • Naked URL (trystpilot.xyz): 15%
  • Generic (“click here”, “read more”): < 5%
  • Partial match keyword: 25%
  • Exact match keyword: 15%
Section titled “Sites to Avoid (Link from would be harmful)”
  • Adult/explicit content sites
  • PBNs or obvious link farms
  • Doxxing or harassment-adjacent sites
  • Any site with known Google penalties

To attract advertisers, we need traffic in these keyword clusters that map to advertiser verticals:

Advertiser CategoryKeyword Cluster to OwnContent Vehicle
Dating apps (Tinder, Hinge, Bumble)“online dating”, “dating tips”, “best dating apps”Blog
Background check services (BeenVerified, Spokeo)“how to research someone you’re dating”, “date safety check”Blog
Relationship coaching / therapy (BetterHelp, Talkspace)“relationship red flags”, “communication in relationships”Blog
Self-help books / courses”improve your dating life”, “relationship compatibility”Blog
Legal services”how to report harassment”, “removal request”Legal pages
  • About page / press kit (future)
  • Traffic verification via Cloudflare + Vercel Analytics
  • Clear content moderation policy visible to advertisers
  • Professional legal framework (Terms, DMCA, Law Enforcement page)

ToolPurposeFrequency
Google Search ConsoleImpressions, clicks, average position, index coverage, Core Web VitalsWeekly
Google Analytics 4 (recommended add)Organic traffic, bounce rate, conversion pathsWeekly
Vercel AnalyticsReal-time page performanceDaily
Cloudflare AnalyticsTraffic patterns, bot detectionDaily
Google Rich Results TestValidate JSON-LD schemasPer deploy
PageSpeed InsightsCore Web Vitals — LCP, CLS, FIDMonthly
Bing Webmaster ToolsBing/Yahoo index coverage (10% of US search)Monthly
KPITargetMeasured By
Organic clicks (home)Month-over-month growthGSC
Profile pages indexed> 90% of approved profilesGSC → Coverage
Blog post impressionsGrowth per post over 90 daysGSC
Average position — head terms< 10 within 6 monthsGSC
Core Web Vitals — LCP< 2.5 secondsGSC / PageSpeed
Core Web Vitals — CLS< 0.1GSC / PageSpeed
Backlink countMonth-over-month growthAhrefs / GSC Links report

  • Submit sitemap.xml to Google Search Console
  • Submit sitemap.xml to Bing Webmaster Tools
  • Verify domain ownership in GSC and Bing
  • Create og-default.png (1200×630px) and add to /public/
  • Audit HeroSection component — confirm <h1> tag exists
  • Add noindex metadata to /app/profile/create/page.tsx
  • Test all JSON-LD schemas at search.google.com/test/rich-results
  • Run PageSpeed Insights — resolve any LCP > 2.5s or CLS > 0.1
  • Add Google Analytics 4 (or confirm Vercel Analytics is sufficient)
  • Verify robots.txt is accessible at trystpilot.xyz/robots.txt
  • Confirm sitemap is accessible at trystpilot.xyz/sitemap.xml
  • Set NEXT_PUBLIC_BASE_URL env var in Vercel production settings
  • Test 5 profile pages — verify AggregateRating rich result eligibility
  • Test 3 blog posts — verify Article rich result eligibility
  • Verify no indexed pages return 4xx/5xx in GSC after launch

Maintained by the Trystpilot engineering team. Update this document on each SEO-related PR.