diff --git a/apps/sim/app/(landing)/components/hero/components/hero-header/hero-header.tsx b/apps/sim/app/(landing)/components/hero/components/hero-header/hero-header.tsx
index c2e9b566956..d06e6ca7a88 100644
--- a/apps/sim/app/(landing)/components/hero/components/hero-header/hero-header.tsx
+++ b/apps/sim/app/(landing)/components/hero/components/hero-header/hero-header.tsx
@@ -6,6 +6,12 @@ import { LANDING_HERO_CTA_GAP } from '@/app/(landing)/components/landing-layout'
interface LandingHeroHeaderProps {
description: string
+ /**
+ * Optional second paragraph beneath the description - a self-contained
+ * definition of the page's subject, kept quotable for answer engines (GEO).
+ * Omitted by the homepage, so its hero renders unchanged.
+ */
+ definition?: string
eyebrow?: ReactNode
heading: ReactNode
headingId: string
@@ -17,6 +23,7 @@ interface LandingHeroHeaderProps {
*/
export function LandingHeroHeader({
description,
+ definition,
eyebrow,
heading,
headingId,
@@ -37,6 +44,12 @@ export function LandingHeroHeader({
{description}
+ {definition ? (
+ `, OG/Twitter titles (`page.tsx`), and the JSON-LD `WebPage.name`
+ * below, so the title surfaces never drift.
+ */
+export const HOME_PAGE_TITLE = 'The AI Workspace | Build, Deploy & Manage AI Agents | Sim'
+
const HOME_JSON_LD = {
'@context': 'https://schema.org',
'@graph': [
@@ -31,7 +38,7 @@ const HOME_JSON_LD = {
'@type': 'WebPage',
'@id': `${SITE_URL}#webpage`,
url: SITE_URL,
- name: 'Sim, The AI Workspace | Build, Deploy & Manage AI Agents',
+ name: HOME_PAGE_TITLE,
isPartOf: { '@id': `${SITE_URL}#website` },
about: { '@id': `${SITE_URL}#software` },
datePublished: '2024-01-01T00:00:00+00:00',
diff --git a/apps/sim/app/(landing)/components/home-structured-data/index.ts b/apps/sim/app/(landing)/components/home-structured-data/index.ts
index 61d458f204c..d4a9af3c897 100644
--- a/apps/sim/app/(landing)/components/home-structured-data/index.ts
+++ b/apps/sim/app/(landing)/components/home-structured-data/index.ts
@@ -1 +1 @@
-export { HOME_PAGE_DESCRIPTION, HomeStructuredData } from './home-structured-data'
+export { HOME_PAGE_DESCRIPTION, HOME_PAGE_TITLE, HomeStructuredData } from './home-structured-data'
diff --git a/apps/sim/app/(landing)/components/mothership/mothership.tsx b/apps/sim/app/(landing)/components/mothership/mothership.tsx
index 62f0d9d34f5..24995307640 100644
--- a/apps/sim/app/(landing)/components/mothership/mothership.tsx
+++ b/apps/sim/app/(landing)/components/mothership/mothership.tsx
@@ -83,7 +83,7 @@ export function Mothership() {
className='max-w-[1200px] text-balance text-[28px] leading-[1.2] max-sm:text-[22px]'
>
- Everything your agents need, in one workspace.
+ Everything your AI agents need, in one workspace.
Build, run, and watch every agent.
diff --git a/apps/sim/app/(landing)/components/product-demo/product-demo.tsx b/apps/sim/app/(landing)/components/product-demo/product-demo.tsx
index 10d1f030024..948a27234ba 100644
--- a/apps/sim/app/(landing)/components/product-demo/product-demo.tsx
+++ b/apps/sim/app/(landing)/components/product-demo/product-demo.tsx
@@ -45,8 +45,9 @@ export function ProductDemo() {
Describe it. Sim builds it.
- Tell Sim what you need in plain English and it wires blocks, models, and integrations
- into a working agent.
+ Describe what you want to automate in plain English. Sim acts as an AI agent builder,
+ connecting the right blocks, models, tools, and data into a working workflow that you
+ can review, customize, test, and deploy.
diff --git a/apps/sim/app/(landing)/components/solutions-page/components/solutions-card-row/components/solutions-card-row-header/solutions-card-row-header.tsx b/apps/sim/app/(landing)/components/solutions-page/components/solutions-card-row/components/solutions-card-row-header/solutions-card-row-header.tsx
index c430eed9f7f..3aa995e65f3 100644
--- a/apps/sim/app/(landing)/components/solutions-page/components/solutions-card-row/components/solutions-card-row-header/solutions-card-row-header.tsx
+++ b/apps/sim/app/(landing)/components/solutions-page/components/solutions-card-row/components/solutions-card-row-header/solutions-card-row-header.tsx
@@ -3,8 +3,9 @@ import { SOLUTIONS_SPACING } from '@/app/(landing)/components/solutions-page/con
import type { SolutionsCardRowConfig } from '@/app/(landing)/components/solutions-page/types'
/**
- * The header block of a card row - an `