PageSourceSearch

https://getsocialclaw.com/pricing

html getsocialclaw.com collected 2026-10-07 22:57:00 UTC 109,943 bytes, 2,253 lines download raw bytes

1<!doctype html>
2<html lang="en">
3<head>
4  <meta charset="utf-8" />
5  <meta name="viewport" content="width=device-width, initial-scale=1" />
6  <!-- Lemon Squeezy affiliate tracking: records the click and stores the ref in the ls_aff_ref cookie -->
7  
7<script>window.lemonSqueezyAffiliateConfig = { store: "socialclaw" };</script>
7
8  
8<script src="https://lmsqueezy.com/affiliate.js" defer></script>
8
9  <title>Pricing | SocialClaw</title>
10  <meta
11    name="description"
12    content="Start with a 7-day free trial, then choose a SocialClaw plan for hosted social publishing, workspace API access, and the CLI."
13  />
14  <link rel="canonical" href="https://getsocialclaw.com/pricing" />
15  <meta property="og:type" content="website" />
16  <meta property="og:title" content="Pricing | SocialClaw" />
17  <meta
18    property="og:description"
19    content="Start with a 7-day free trial, then choose a SocialClaw plan for hosted social publishing, workspace API access, and the CLI."
20  />
21  <meta property="og:url" content="https://getsocialclaw.com/pricing" />
22  <meta name="twitter:card" content="summary_large_image" />
23  <meta name="twitter:title" content="Pricing | SocialClaw" />
24  <meta
25    name="twitter:description"
26    content="Start with a 7-day free trial, then choose a SocialClaw plan for hosted social publishing, workspace API access, and the CLI."
27  />
28  <link rel="icon" type="image/png" href="/branding/socialclaw-app-icon.png" />
29  <link rel="preconnect" href="https://fonts.googleapis.com" />
30  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
31  <link href="https://fonts.googleapis.com/css2?family=Google+Sans:ital,opsz,wght@0,17..18,400..700;1,17..18,400..700&display=swap" rel="stylesheet" />
32  <link rel="stylesheet" href="/ui/brand-theme.css" />
33  <link rel="stylesheet" href="/ui/platform-page.css" />
34  <link rel="stylesheet" href="/ui/support-widget.css" />
vendor: 66 bytes, lines 34-35
34
35  <script async src="https://www.googletagmanager.com/gtag/js?id=
35AW-18165043006
vendor: 14 bytes, lines 35-36
35"></script>
36  
36<script>
37    
vendor: 140 bytes, lines 37-41
37window.dataLayer = window.dataLayer || [];
38    function gtag(){dataLayer.push(arguments);}
39    gtag('js', new Date());
40
41    gtag('config', '
41AW-18165043006
vendor: 8 bytes, lines 41-42
41');
42    
42gtag('config', 'G-3FNGE72PDV');
43  </script>
43
44  
44<script type="application/ld+json">
45    {
46      "@context": "https://schema.org",
47      "@graph": [
48        {
49          "@type": "Organization",
50          "@id": "https://getsocialclaw.com/#organization",
51          "name": "SocialClaw",
52          "url": "https://getsocialclaw.com/",
53          "logo": {
54            "@type": "ImageObject",
55            "url": "https://getsocialclaw.com/branding/socialclaw-app-icon.png"
56          }
57        },
58        {
59          "@type": "WebSite",
60          "@id": "https://getsocialclaw.com/#website",
61          "name": "SocialClaw",
62          "url": "https://getsocialclaw.com/",
63          "publisher": {
64            "@id": "https://getsocialclaw.com/#organization"
65          }
66        },
67        {
68          "@type": "SoftwareApplication",
69          "@id": "https://getsocialclaw.com/#software",
70          "name": "SocialClaw",
71          "url": "https://getsocialclaw.com/",
72          "applicationCategory": "BusinessApplication",
73          "operatingSystem": "Web",
74          "description": "Hosted social publishing workspace with a dashboard, workspace API, CLI access, and media storage.",
75          "publisher": {
76            "@id": "https://getsocialclaw.com/#organization"
77          }
78        },
79        {
80          "@type": "WebPage",
81          "@id": "https://getsocialclaw.com/pricing#webpage",
82          "url": "https://getsocialclaw.com/pricing",
83          "name": "Pricing | SocialClaw",
84          "description": "Start with a 7-day free trial, then choose a SocialClaw plan for hosted social publishing, workspace API access, and the CLI.",
85          "isPartOf": {
86            "@id": "https://getsocialclaw.com/#website"
87          },
88          "about": {
89            "@id": "https://getsocialclaw.com/#software"
90          },
91          "publisher": {
92            "@id": "https://getsocialclaw.com/#organization"
93          }
94        },
95        {
96          "@type": "BreadcrumbList",
97          "@id": "https://getsocialclaw.com/pricing#breadcrumb",
98          "itemListElement": [
99            {
100              "@type": "ListItem",
101              "position": 1,
102              "name": "Home",
103              "item": "https://getsocialclaw.com/"
104            },
105            {
106              "@type": "ListItem",
107              "position": 2,
108              "name": "Pricing",
109              "item": "https://getsocialclaw.com/pricing"
110            }
111          ]
112        }
113      ]
114    }
115  </script>
115
116  <style>
117    .pricingPanel {
118      margin-top: 24px;
119      padding: clamp(20px, 3vw, 38px);
120      width: min(940px, 100%);
121      margin-left: auto;
122      margin-right: auto;
123      border: 0;
124      border-radius: var(--radius-panel);
125      background: var(--panel-strong);
126    }
127
128    .pricingPanelInner {
129      display: grid;
130      gap: 26px;
131    }
132
133    .pricingHead {
134      display: flex;
135      align-items: center;
136      justify-content: space-between;
137      gap: 16px;
138      flex-wrap: wrap;
139    }
140
141    .pricingHeading {
142      margin: 0;
143      font-size: clamp(1.7rem, 3.4vw, 2.4rem);
144      line-height: 1;
145      letter-spacing: -0.03em;
146      font-weight: 600;
147    }
148
149    .pricingSub {
150      margin: 6px 0 0;
151      color: var(--muted);
152      font-size: 15px;
153    }
154
155    /* Billing toggle */
156    .toggle {
157      display: inline-flex;
158      align-items: center;
159      gap: 4px;
160      padding: 5px;
161      border-radius: 999px;
162      border: 1px solid var(--line);
163      background: #f6f7f9;
164    }
165
166    .toggle button {
167      display: inline-flex;
168      align-items: center;
169      gap: 8px;
170      min-height: 40px;
171      padding: 0 18px;
172      border-radius: 999px;
173      border: 0;
174      background: transparent;
175      color: var(--muted);
176      font-family: inherit;
177      font-size: 15px;
178      font-weight: 500;
179      cursor: pointer;
180      transition: background 160ms ease, color 160ms ease;
181    }
182
183    .toggle button.isActive {
184      background: #ffffff;
185      color: var(--ink);
186      box-shadow: 0 1px 3px rgba(23, 32, 51, 0.12);
187    }
188
189    .saveTag {
190      font-size: 12px;
191      font-weight: 700;
192      letter-spacing: 0.01em;
193      color: #fff;
194      background: var(--blue);
195      padding: 2px 8px;
196      border-radius: 999px;
197    }
198
199    /* Two panels side by side: plan cards (left) + included features (right) */
200    .pricingMain {
201      display: grid;
202      grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
203      gap: 18px;
204      align-items: start;
205    }
206
207    /* Selectable plan cards */
208    .cards {
209      display: grid;
210      grid-template-columns: 1fr 1fr;
211      gap: 14px;
212    }
213
214    .planCard {
215      position: relative;
216      display: grid;
217      gap: 10px;
218      padding: 22px 22px 22px 54px;
219      text-align: left;
220      border: 1.5px solid var(--line);
221      border-radius: 20px;
222      background: #fff;
223      cursor: pointer;
224      transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
225    }
226
227    .planCard:hover {
228      border-color: var(--line-strong);
229    }
230
231    .planCard.isSelected {
232      border-color: var(--blue);
233      background: rgba(40, 105, 254, 0.045);
234      box-shadow: inset 0 0 0 1px var(--blue);
235    }
236
237    .planCard:focus-visible {
238      outline: 3px solid var(--glow);
239      outline-offset: 2px;
240    }
241
242    .planTick {
243      position: absolute;
244      left: 20px;
245      top: 24px;
246      width: 22px;
247      height: 22px;
248      border-radius: 50%;
249      border: 2px solid var(--line-strong);
250      background: #fff;
251      display: grid;
252      place-items: center;
253      transition: border-color 150ms ease, background 150ms ease;
254    }
255
256    .planTick svg {
257      width: 13px;
258      height: 13px;
259      opacity: 0;
260      transition: opacity 120ms ease;
261    }
262
263    .planCard.isSelected .planTick {
264      border-color: var(--blue);
265      background: var(--blue);
266    }
267
268    .planCard.isSelected .planTick svg {
269      opacity: 1;
270    }
271
272    .planTop {
273      display: flex;
274      align-items: center;
275      gap: 10px;
276      flex-wrap: wrap;
277    }
278
279    .planName {
280      font-size: 1.25rem;
281      font-weight: 600;
282      line-height: 1;
283    }
284
285    .planTag {
286      font-size: 11px;
287      font-weight: 700;
288      text-transform: uppercase;
289      letter-spacing: 0.06em;
290      color: var(--blue);
291      background: rgba(40, 105, 254, 0.12);
292      padding: 3px 9px;
293      border-radius: 999px;
294    }
295
296    .planTag[data-tone="current"] {
297      color: var(--good);
298      background: var(--good-soft);
299    }
300
301    .planScale {
302      color: var(--ink);
303      font-size: 16.5px;
304      font-weight: 600;
305      line-height: 1.3;
306      letter-spacing: -0.01em;
307    }
308
309    .planPriceRow {
310      display: flex;
311      align-items: baseline;
312      gap: 6px;
313      margin-top: 2px;
314    }
315
316    .planPriceRow .priceBig {
317      font-size: 2.3rem;
318      line-height: 0.9;
319      font-weight: 600;
320      letter-spacing: -0.02em;
321    }
322
323    .planPriceRow .priceSuffix {
324      color: var(--muted);
325      font-size: 14px;
326    }
327
328    .trialPrice {
329      display: flex;
330      align-items: baseline;
331      gap: 8px;
332      flex-wrap: wrap;
333    }
334
335    .trialPrice .priceBig {
336      font-size: 2.3rem;
337      line-height: 0.9;
338      font-weight: 600;
339      letter-spacing: -0.02em;
340    }
341
342    .trialLead {
343      color: var(--good);
344      font-size: 14px;
345      font-weight: 600;
346    }
347
348    .trialAfter {
349      color: var(--muted);
350      font-size: 13px;
351    }
352
353    .trialAfter strong {
354      color: var(--ink);
355      font-weight: 700;
356    }
357
358    /* Included-in-every-plan box (shown once, not repeated per card) */
359    .includedBox {
360      border: 1px dashed var(--line-strong);
361      border-radius: 20px;
362      padding: 22px 24px;
363      background: #fbfcfd;
364      height: 100%;
365    }
366
367    .includedTitle {
368      display: block;
369      font-size: 13px;
370      font-weight: 700;
371      letter-spacing: 0.08em;
372      text-transform: uppercase;
373      color: var(--muted);
374      margin-bottom: 16px;
375    }
376
377    .includedGrid {
378      list-style: none;
379      margin: 0;
380      padding: 0;
381      display: grid;
382      grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
383      gap: 12px 28px;
384    }
385
386    .includedGrid li {
387      display: flex;
388      align-items: center;
389      gap: 11px;
390      color: var(--ink);
391      font-size: 15.5px;
392      line-height: 1.3;
393    }
394
395    .includedGrid svg {
396      flex: 0 0 auto;
397      width: 20px;
398      height: 20px;
399    }
400
401    .includedGrid img {
402      flex: 0 0 auto;
403      height: 24px;
404      width: auto;
405      max-width: 30px;
406      object-fit: contain;
407    }
408
409    /* Single conversion CTA — sticky to the bottom of the viewport */
410    .ctaRow {
411      position: sticky;
412      bottom: 14px;
413      z-index: 6;
414      display: grid;
415      gap: 8px;
416      margin-top: 4px;
417      padding: 12px;
418      border-radius: 18px;
419      background: rgba(255, 255, 255, 0.92);
420      backdrop-filter: blur(12px);
421      border: 0;
422      box-shadow: 0 10px 30px -12px rgba(23, 32, 51, 0.18);
423    }
424
425    .ctaButton {
426      width: 100%;
427      min-height: 60px;
428      font-size: 18px;
429      font-weight: 600;
430    }
431
432    /* Busy is NOT the same as disabled. A greyed-out button reads as "broken"
433       to someone who just clicked it, which is the exact complaint this state
434       exists to fix — so keep full contrast and show motion instead. */
435    .ctaButton.isBusy,
436    .ctaButton.isBusy:disabled {
437      opacity: 1;
438      cursor: progress;
439    }
440
441    .ctaSpinner {
442      display: inline-block;
443      width: 16px;
444      height: 16px;
445      margin-right: 9px;
446      vertical-align: -3px;
447      border: 2px solid rgba(255, 255, 255, 0.35);
448      border-top-color: #ffffff;
449      border-radius: 50%;
450      animation: ctaSpin 0.7s linear infinite;
451    }
452
453    @keyframes ctaSpin {
454      to { transform: rotate(360deg); }
455    }
456
457    @media (prefers-reduced-motion: reduce) {
458      .ctaSpinner { animation-duration: 2.4s; }
459    }
460
461    .ctaMeta {
462      display: flex;
463      align-items: center;
464      justify-content: center;
465      gap: 6px;
466      flex-wrap: wrap;
467      color: var(--muted);
468      font-size: 13.5px;
469      text-align: center;
470    }
471
472    .yearlyHint {
473      border: 0;
474      background: transparent;
475      color: var(--blue);
476      font-family: inherit;
477      font-size: 13.5px;
478      font-weight: 600;
479      cursor: pointer;
480      padding: 0;
481    }
482
483    .yearlyHint[hidden] {
484      display: none;
485    }
486
487    .statusBar {
488      display: none;
489      margin-top: 18px;
490      padding: 14px 16px;
491      border-radius: 22px;
492      border: 1px solid var(--line);
493      background: rgba(255, 255, 255, 0.9);
494    }
495
496    .statusBar.isVisible {
497      display: grid;
498      gap: 4px;
499    }
500
501    .statusBar strong {
502      font-size: 14px;
503    }
504
505    .statusBar span {
506      color: var(--muted);
507      font-size: 14px;
508      line-height: 1.45;
509    }
510
511    .statusBar[data-tone="warn"] {
512      background: var(--warn-soft);
513      border-color: rgba(181, 71, 8, 0.14);
514    }
515
516    .statusBar[data-tone="good"] {
517      background: var(--good-soft);
518      border-color: rgba(6, 118, 71, 0.14);
519    }
520
521    .logoTickerSection {
522      padding: 40px 0 64px;
523    }
524
525    .logoTickerWrap {
526      width: 100%;
527      max-width: 1280px;
528      margin: 0 auto;
529      overflow: hidden;
530      -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
531      mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
532    }
533
534    .logoTickerTrack {
535      display: flex;
536      align-items: center;
537      gap: 10px;
538      width: max-content;
539      min-width: max-content;
540      animation: pricingLogoTicker 26s linear infinite;
541    }
542
543    .logoTickerWrap:hover .logoTickerTrack {
544      animation-play-state: paused;
545    }
546
547    .logoTickerItem {
548      width: 104px;
549      height: 104px;
550      flex: 0 0 104px;
551      border-radius: 10px;
552      overflow: hidden;
553      background: #ffffff;
554    }
555
556    .logoTickerItem img {
557      display: block;
558      width: 100%;
559      height: 100%;
560      object-fit: cover;
561    }
562
563    @keyframes pricingLogoTicker {
564      from {
565        transform: translate3d(0, 0, 0);
566      }
567
568      to {
569        transform: translate3d(calc(-50% - 5px), 0, 0);
570      }
571    }
572
573    @media (max-width: 920px) {
574      .pricingMain {
575        grid-template-columns: 1fr;
576      }
577    }
578
579    @media (max-width: 640px) {
580      .pricingPanel {
581        padding: 18px;
582      }
583
584      .pricingHead {
585        justify-content: center;
586        text-align: center;
587      }
588
589      .cards {
590        grid-template-columns: 1fr;
591      }
592
593      .includedGrid {
594        grid-template-columns: 1fr;
595      }
596
597      .logoTickerSection {
598        padding: 28px 0 48px;
599      }
600
601      .logoTickerItem {
602        width: 84px;
603        height: 84px;
604        flex-basis: 84px;
605      }
606    }
607  </style>
608</head>
609<body>
610  <div class="backdrop"></div>
611  <main class="shell">
612    <header class="scNav" data-site-nav>
613    <nav class="scNavBar" aria-label="Main">
614      <a class="scNavBrand" href="/" aria-label="SocialClaw">
615        <img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/socialclaw-new-icon.png" alt="" width="26" height="26">
616        <span>SocialClaw</span>
617      </a>
618
619      <div class="scNavItems">
620        <div class="scNavGroup" data-nav-group="product">
621        <button class="scNavItem" type="button" aria-expanded="false" aria-controls="scNavPanel-product">
622          <span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><rect x="3" y="3" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/><rect x="13" y="3" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/><rect x="3" y="13" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/><rect x="13" y="13" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/></svg></span>Product<svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
623        </button>
624        <div class="scNavPanel scNavPanel-product" id="scNavPanel-product" role="region" aria-label="Product" hidden>
625        <div class="scNavPanelGlass">
626          <div class="scNavPanelBody scNavPanelBody-lists">
627            <div class="scNavCol">
628            <span class="scNavColLabel">Explore</span>
629            <a class="scNavRow" href="/viral-video-generator">
630              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/video.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
631              <span class="scNavRowText">
632                <span class="scNavRowTitle">Viral video generator</span>
633                <span class="scNavRowNote">AI-edited UGC promo videos from your app</span>
634              </span>
635            </a>
636            <a class="scNavRow" href="/ugc-marketplace">
637              <span class="scNavRowIcon scNavRowIconRaw"><span class="scNavStack" aria-hidden="true"><img src="/ui/ugc-nav-1.jpg" alt="" width="16" height="21" loading="lazy" decoding="async"><img src="/ui/ugc-nav-2.jpg" alt="" width="16" height="21" loading="lazy" decoding="async"><img src="/ui/ugc-nav-3.jpg" alt="" width="16" height="21" loading="lazy" decoding="async"></span></span>
638              <span class="scNavRowText">
639                <span class="scNavRowTitle">UGC creator marketplace</span>
640                <span class="scNavRowNote">Real human clips in reusable packs</span>
641              </span>
642            </a>
643            <a class="scNavRow" href="/social-media-scheduler">
644              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/calendar.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
645              <span class="scNavRowText">
646                <span class="scNavRowTitle">Scheduler</span>
647                <span class="scNavRowNote">Plan and queue posts across 11 networks</span>
648              </span>
649            </a>
650            <a class="scNavRow" href="/ai-social-media-scheduler">
651              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/aichat.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
652              <span class="scNavRowText">
653                <span class="scNavRowTitle">AI scheduler</span>
654                <span class="scNavRowNote">Let an agent pick the slots and write the copy</span>
655              </span>
656            </a>
657            <a class="scNavRow" href="/social-media-management">
658              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/accounts.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
659              <span class="scNavRowText">
660                <span class="scNavRowTitle">Management</span>
661                <span class="scNavRowNote">Accounts, assets, and approvals in one workspace</span>
662              </span>
663            </a>
664          </div>
665          <div class="scNavCol">
666            <span class="scNavColLabel">Create</span>
667            <a class="scNavRow" href="/social-media-management">
668              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/video.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
669              <span class="scNavRowText">
670                <span class="scNavRowTitle">Media studio</span>
671                <span class="scNavRowNote">Generate video, voice, and images in-app</span>
672              </span>
673            </a>
674            <a class="scNavRow" href="/social-media-management">
675              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/Analytics.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
676              <span class="scNavRowText">
677                <span class="scNavRowTitle">Analytics</span>
678                <span class="scNavRowNote">Reach and engagement per account</span>
679              </span>
680            </a>
681            <a class="scNavRow" href="/workflows">
682              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/agentskills.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
683              <span class="scNavRowText">
684                <span class="scNavRowTitle">Workflows</span>
685                <span class="scNavRowNote">Repeatable posting routines</span>
686              </span>
687            </a>
688          </div>
689          <div class="scNavCol">
690            <span class="scNavColLabel">Free tools</span>
691            <a class="scNavRow scNavRowBare" href="/tools/instagram-caption-generator">
692              <span class="scNavRowText">
693                <span class="scNavRowTitle">Instagram caption generator</span>
694                
695              </span>
696            </a>
697            <a class="scNavRow scNavRowBare" href="/tools/linkedin-post-generator">
698              <span class="scNavRowText">
699                <span class="scNavRowTitle">LinkedIn post generator</span>
700                
701              </span>
702            </a>
703            <a class="scNavRow scNavRowBare" href="/tools/best-time-to-post-calculator">
704              <span class="scNavRowText">
705                <span class="scNavRowTitle">Best time to post</span>
706                
707              </span>
708            </a>
709            <a class="scNavRow scNavRowBare" href="/tools/schedule-validator">
710              <span class="scNavRowText">
711                <span class="scNavRowTitle">Schedule validator</span>
712                
713              </span>
714            </a>
715          </div>
716          </div>
717          <a class="scNavCallout" href="/instagram">
718            <span class="scNavCalloutBadge">New</span><span class="scNavCalloutText">Schedule Instagram posts from Claude, Codex, or your own code</span>
719            <span class="scNavCalloutCta">Instagram</span>
720          </a>
721        </div>
722        </div>
723      </div>
724      <div class="scNavGroup" data-nav-group="platforms">
725        <button class="scNavItem" type="button" aria-expanded="false" aria-controls="scNavPanel-platforms">
726          <span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><circle cx="12" cy="12" r="9" stroke="currentColor" stroke-width="1.6"/><path d="M3 12h18M12 3c2.8 2.6 4.2 5.8 4.2 9s-1.4 6.4-4.2 9c-2.8-2.6-4.2-5.8-4.2-9s1.4-6.4 4.2-9Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span>Platforms<svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
727        </button>
728        <div class="scNavPanel scNavPanel-platforms" id="scNavPanel-platforms" role="region" aria-label="Platforms" hidden>
729        <div class="scNavPanelGlass">
730          <div class="scNavPanelBody scNavPanelBody-platforms">
731            <div class="scNavCol scNavColWide">
732            <span class="scNavColLabel">All platforms</span>
733            <div class="scNavPlatformGrid">
734            <a class="scNavPlatform" href="/instagram">
735              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/instagram.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
736              <span class="scNavRowTitle">Instagram</span>
737            </a>
738            <a class="scNavPlatform" href="/tiktok">
739              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/tiktok.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
740              <span class="scNavRowTitle">TikTok</span>
741            </a>
742            <a class="scNavPlatform" href="/x">
743              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/x.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
744              <span class="scNavRowTitle">X</span>
745            </a>
746            <a class="scNavPlatform" href="/linkedin">
747              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/linkedin.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
748              <span class="scNavRowTitle">LinkedIn</span>
749            </a>
750            <a class="scNavPlatform" href="/facebook">
751              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/facebook.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
752              <span class="scNavRowTitle">Facebook</span>
753            </a>
754            <a class="scNavPlatform" href="/youtube">
755              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/youtube.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
756              <span class="scNavRowTitle">YouTube</span>
757            </a>
758            <a class="scNavPlatform" href="/reddit">
759              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/reddit.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
760              <span class="scNavRowTitle">Reddit</span>
761            </a>
762            <a class="scNavPlatform" href="/discord">
763              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/discord.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
764              <span class="scNavRowTitle">Discord</span>
765            </a>
766            <a class="scNavPlatform" href="/telegram">
767              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/telegram.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
768              <span class="scNavRowTitle">Telegram</span>
769            </a>
770            <a class="scNavPlatform" href="/wordpress">
771              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/wordpress.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
772              <span class="scNavRowTitle">WordPress</span>
773            </a>
774            <a class="scNavPlatform" href="/pinterest">
775              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/pinterest.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
776              <span class="scNavRowTitle">Pinterest</span>
777            </a>
778            <a class="scNavPlatform" href="/snapchat">
779              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/snapchat.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
780              <span class="scNavRowTitle">Snapchat</span>
781            </a>
782            </div>
783          </div><div class="scNavCol">
784            <span class="scNavColLabel">Popular</span>
785            <a class="scNavRow scNavRowBare" href="/schedule-instagram-posts">
786              <span class="scNavRowText">
787                <span class="scNavRowTitle">Schedule Instagram posts</span>
788                <span class="scNavRowNote">Feed, reels, and stories</span>
789              </span>
790            </a>
791            <a class="scNavRow scNavRowBare" href="/linkedin-post-scheduler">
792              <span class="scNavRowText">
793                <span class="scNavRowTitle">LinkedIn post scheduler</span>
794                <span class="scNavRowNote">Profiles and company pages</span>
795              </span>
796            </a>
797            <a class="scNavRow scNavRowBare" href="/best-time-to-post-on-instagram">
798              <span class="scNavRowText">
799                <span class="scNavRowTitle">Best time to post on Instagram</span>
800                
801              </span>
802            </a>
803            <a class="scNavRow scNavRowBare" href="/best-time-to-post-on-tiktok">
804              <span class="scNavRowText">
805                <span class="scNavRowTitle">Best time to post on TikTok</span>
806                
807              </span>
808            </a>
809          </div>
810          </div>
811          <a class="scNavCallout" href="/integrations">
812            <span class="scNavCalloutText">Every network, one API and one schedule</span>
813            <span class="scNavCalloutCta">All integrations</span>
814          </a>
815        </div>
816        </div>
817      </div>
818      <div class="scNavGroup" data-nav-group="developers">
819        <button class="scNavItem" type="button" aria-expanded="false" aria-controls="scNavPanel-developers">
820          <span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><rect x="3" y="4" width="18" height="16" rx="3" stroke="currentColor" stroke-width="1.6"/><path d="m8 10 3 3-3 3M13 16h4" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg></span>Developers<svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
821        </button>
822        <div class="scNavPanel scNavPanel-developers" id="scNavPanel-developers" role="region" aria-label="Developers" hidden>
823        <div class="scNavPanelGlass">
824          <div class="scNavPanelBody scNavPanelBody-cards">
825            <div class="scNavCards">
826            <a class="scNavCard scNavCard-img" href="/social-media-scheduling-api" style="background-image: url('https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/platform/spokes/spoke-api-v2.webp')" data-watermark="API">
827              <img class="scNavCardIcon" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/api.svg" alt="" width="26" height="26" loading="lazy" decoding="async">
828              <span class="scNavCardTitle">API</span>
829              <span class="scNavCardNote">Validate and apply schedules over REST</span>
830            </a>
831            <a class="scNavCard scNavCard-img" href="/mcp" style="background-image: url('https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/platform/spokes/spoke-mcp-v2.webp')" data-watermark="MCP">
832              <img class="scNavCardIcon" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/mcp.svg" alt="" width="26" height="26" loading="lazy" decoding="async">
833              <span class="scNavCardTitle">MCP</span>
834              <span class="scNavCardNote">18 tools for Claude, ChatGPT, and Cursor</span>
835            </a>
836            <a class="scNavCard scNavCard-img" href="/social-media-cli" style="background-image: url('https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/platform/spokes/spoke-cli-v2.webp')" data-watermark="CLI">
837              <img class="scNavCardIcon" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/cli.svg" alt="" width="26" height="26" loading="lazy" decoding="async">
838              <span class="scNavCardTitle">CLI</span>
839              <span class="scNavCardNote">Post from your terminal or from CI</span>
840            </a>
841          </div><div class="scNavCol">
842            <span class="scNavColLabel">AI clients</span>
843            <a class="scNavRow" href="/claude-social-media-integration">
844              <span class="scNavRowIcon"><img src="/ui/agent-icons/claude.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
845              <span class="scNavRowText">
846                <span class="scNavRowTitle">Claude</span>
847                <span class="scNavRowNote">Desktop, web, and Claude Code</span>
848              </span>
849            </a>
850            <a class="scNavRow" href="/chatgpt-social-media-integration">
851              <span class="scNavRowIcon"><img src="/ui/agent-icons/chatgpt.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
852              <span class="scNavRowText">
853                <span class="scNavRowTitle">ChatGPT</span>
854                <span class="scNavRowNote">Connect via the hosted MCP server</span>
855              </span>
856            </a>
857            <a class="scNavRow" href="/codex-social-media-integration">
858              <span class="scNavRowIcon"><img src="/ui/agent-icons/codex.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
859              <span class="scNavRowText">
860                <span class="scNavRowTitle">Codex</span>
861                <span class="scNavRowNote">OpenAI's coding agent</span>
862              </span>
863            </a>
864            <a class="scNavRow" href="/ai-agent">
865              <span class="scNavRowIcon"><img src="/ui/agent-icons/openclaw.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
866              <span class="scNavRowText">
867                <span class="scNavRowTitle">OpenClaw</span>
868                <span class="scNavRowNote">Run the skill in your own agent</span>
869              </span>
870            </a>
871          </div>
872          </div>
873          <a class="scNavCallout" href="/docs">
874            <span class="scNavCalloutText scNavCalloutMono">npm install -g socialclaw</span>
875            <span class="scNavCalloutCta">Documentation</span>
876          </a>
877        </div>
878        </div>
879      </div>
880      <div class="scNavGroup" data-nav-group="resources">
881        <button class="scNavItem" type="button" aria-expanded="false" aria-controls="scNavPanel-resources">
882          <span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 5.5C4 4.7 4.7 4 5.5 4H12v16H5.5A1.5 1.5 0 0 1 4 18.5v-13Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><path d="M20 5.5c0-.8-.7-1.5-1.5-1.5H12v16h6.5a1.5 1.5 0 0 0 1.5-1.5v-13Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span>Resources<svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
883        </button>
884        <div class="scNavPanel scNavPanel-resources" id="scNavPanel-resources" role="region" aria-label="Resources" hidden>
885        <div class="scNavPanelGlass">
886          <div class="scNavPanelBody scNavPanelBody-lists">
887            <div class="scNavCol">
888            <span class="scNavColLabel">Learn</span>
889            <a class="scNavRow" href="/blog">
890              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/blog.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
891              <span class="scNavRowText">
892                <span class="scNavRowTitle">Blog</span>
893                <span class="scNavRowNote">Guides, teardowns, and release notes</span>
894              </span>
895            </a>
896            <a class="scNavRow" href="/changelog">
897              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/changelog.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
898              <span class="scNavRowText">
899                <span class="scNavRowTitle">Changelog</span>
900                <span class="scNavRowNote">What shipped, and when</span>
901              </span>
902            </a>
903            <a class="scNavRow" href="/use-cases">
904              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/usecases.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
905              <span class="scNavRowText">
906                <span class="scNavRowTitle">Use cases</span>
907                <span class="scNavRowNote">How teams run their posting</span>
908              </span>
909            </a>
910          </div>
911          <div class="scNavCol">
912            <span class="scNavColLabel">Compare</span>
913            <a class="scNavRow scNavRowBare" href="/compare/postiz">
914              <span class="scNavRowText">
915                <span class="scNavRowTitle">SocialClaw vs Postiz</span>
916                
917              </span>
918            </a>
919            <a class="scNavRow scNavRowBare" href="/compare/buffer">
920              <span class="scNavRowText">
921                <span class="scNavRowTitle">SocialClaw vs Buffer</span>
922                
923              </span>
924            </a>
925            <a class="scNavRow scNavRowBare" href="/compare/hootsuite">
926              <span class="scNavRowText">
927                <span class="scNavRowTitle">SocialClaw vs Hootsuite</span>
928                
929              </span>
930            </a>
931            <a class="scNavRow scNavRowBare" href="/compare/later">
932              <span class="scNavRowText">
933                <span class="scNavRowTitle">SocialClaw vs Later</span>
934                
935              </span>
936            </a>
937            <a class="scNavRow scNavRowBare" href="/compare">
938              <span class="scNavRowText">
939                <span class="scNavRowTitle">All comparisons</span>
940                
941              </span>
942            </a>
943          </div>
944          <div class="scNavCol">
945            <span class="scNavColLabel">Alternatives</span>
946            <a class="scNavRow scNavRowBare" href="/postiz-alternatives">
947              <span class="scNavRowText">
948                <span class="scNavRowTitle">Postiz alternatives</span>
949                
950              </span>
951            </a>
952            <a class="scNavRow scNavRowBare" href="/buffer-alternatives">
953              <span class="scNavRowText">
954                <span class="scNavRowTitle">Buffer alternatives</span>
955                
956              </span>
957            </a>
958            <a class="scNavRow scNavRowBare" href="/hootsuite-alternatives">
959              <span class="scNavRowText">
960                <span class="scNavRowTitle">Hootsuite alternatives</span>
961                
962              </span>
963            </a>
964            <a class="scNavRow scNavRowBare" href="/later-alternatives">
965              <span class="scNavRowText">
966                <span class="scNavRowTitle">Later alternatives</span>
967                
968              </span>
969            </a>
970            <a class="scNavRow scNavRowBare" href="/metricool-alternatives">
971              <span class="scNavRowText">
972                <span class="scNavRowTitle">Metricool alternatives</span>
973                
974              </span>
975            </a>
976          </div>
977          </div>
978          
979        </div>
980        </div>
981      </div>
982      <a class="scNavItem scNavItemPlain" href="/pricing"><span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M11.5 3H5.8A2.8 2.8 0 0 0 3 5.8v5.7c0 .5.2 1 .6 1.4l8.5 8.5c.8.8 2 .8 2.8 0l5.7-5.7c.8-.8.8-2 0-2.8l-8.5-8.5c-.4-.4-.9-.6-1.4-.6Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="8.3" cy="8.3" r="1.3" stroke="currentColor" stroke-width="1.6"/></svg></span>Pricing</a>
983      </div>
984
985      <div class="scNavActions">
986        <button
987          class="scNavNpm"
988          type="button"
989          data-copy-install
990          data-copy-text="npm install -g socialclaw"
991          data-copy-success="Copied!"
992          data-copy-failure="Copy failed"
993          title="Copy npm install -g socialclaw"
994        ><span data-copy-install-label>npm i -g socialclaw</span></button>
995        <!-- No "Start free" here — every page already has that CTA in the hero
996             and again mid-page, so the bar just needs the way back in. -->
997        <a class="scNavCta" href="/sign-in?next=%2Fdashboard">
998          <span class="scNavCtaShine" aria-hidden="true"></span>
999          <span class="scNavCtaLabel">Log in</span>
1000        </a>
1001      </div>
1002
1003      <button class="scNavBurger" type="button" aria-expanded="false" aria-controls="scNavDrawer" aria-label="Menu">
1004        <span></span><span></span>
1005      </button>
1006    </nav>
1007
1008    <div class="scNavDrawer" id="scNavDrawer" hidden>
1009      <div class="scNavAcc" data-nav-acc="product">
1010        <button class="scNavAccHead" type="button" aria-expanded="false" aria-controls="scNavAccBody-product">
1011          <span><span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><rect x="3" y="3" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/><rect x="13" y="3" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/><rect x="3" y="13" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/><rect x="13" y="13" width="8" height="8" rx="2" stroke="currentColor" stroke-width="1.6"/></svg></span>Product</span>
1012          <svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1013        </button>
1014        <div class="scNavAccBody" id="scNavAccBody-product" hidden>
1015          <div class="scNavPanelBody scNavPanelBody-lists">
1016            <div class="scNavCol">
1017            <span class="scNavColLabel">Explore</span>
1018            <a class="scNavRow" href="/viral-video-generator">
1019              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/video.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1020              <span class="scNavRowText">
1021                <span class="scNavRowTitle">Viral video generator</span>
1022                <span class="scNavRowNote">AI-edited UGC promo videos from your app</span>
1023              </span>
1024            </a>
1025            <a class="scNavRow" href="/ugc-marketplace">
1026              <span class="scNavRowIcon scNavRowIconRaw"><span class="scNavStack" aria-hidden="true"><img src="/ui/ugc-nav-1.jpg" alt="" width="16" height="21" loading="lazy" decoding="async"><img src="/ui/ugc-nav-2.jpg" alt="" width="16" height="21" loading="lazy" decoding="async"><img src="/ui/ugc-nav-3.jpg" alt="" width="16" height="21" loading="lazy" decoding="async"></span></span>
1027              <span class="scNavRowText">
1028                <span class="scNavRowTitle">UGC creator marketplace</span>
1029                <span class="scNavRowNote">Real human clips in reusable packs</span>
1030              </span>
1031            </a>
1032            <a class="scNavRow" href="/social-media-scheduler">
1033              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/calendar.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1034              <span class="scNavRowText">
1035                <span class="scNavRowTitle">Scheduler</span>
1036                <span class="scNavRowNote">Plan and queue posts across 11 networks</span>
1037              </span>
1038            </a>
1039            <a class="scNavRow" href="/ai-social-media-scheduler">
1040              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/aichat.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1041              <span class="scNavRowText">
1042                <span class="scNavRowTitle">AI scheduler</span>
1043                <span class="scNavRowNote">Let an agent pick the slots and write the copy</span>
1044              </span>
1045            </a>
1046            <a class="scNavRow" href="/social-media-management">
1047              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/accounts.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1048              <span class="scNavRowText">
1049                <span class="scNavRowTitle">Management</span>
1050                <span class="scNavRowNote">Accounts, assets, and approvals in one workspace</span>
1051              </span>
1052            </a>
1053          </div>
1054          <div class="scNavCol">
1055            <span class="scNavColLabel">Create</span>
1056            <a class="scNavRow" href="/social-media-management">
1057              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/video.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1058              <span class="scNavRowText">
1059                <span class="scNavRowTitle">Media studio</span>
1060                <span class="scNavRowNote">Generate video, voice, and images in-app</span>
1061              </span>
1062            </a>
1063            <a class="scNavRow" href="/social-media-management">
1064              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/Analytics.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1065              <span class="scNavRowText">
1066                <span class="scNavRowTitle">Analytics</span>
1067                <span class="scNavRowNote">Reach and engagement per account</span>
1068              </span>
1069            </a>
1070            <a class="scNavRow" href="/workflows">
1071              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/agentskills.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1072              <span class="scNavRowText">
1073                <span class="scNavRowTitle">Workflows</span>
1074                <span class="scNavRowNote">Repeatable posting routines</span>
1075              </span>
1076            </a>
1077          </div>
1078          <div class="scNavCol">
1079            <span class="scNavColLabel">Free tools</span>
1080            <a class="scNavRow scNavRowBare" href="/tools/instagram-caption-generator">
1081              <span class="scNavRowText">
1082                <span class="scNavRowTitle">Instagram caption generator</span>
1083                
1084              </span>
1085            </a>
1086            <a class="scNavRow scNavRowBare" href="/tools/linkedin-post-generator">
1087              <span class="scNavRowText">
1088                <span class="scNavRowTitle">LinkedIn post generator</span>
1089                
1090              </span>
1091            </a>
1092            <a class="scNavRow scNavRowBare" href="/tools/best-time-to-post-calculator">
1093              <span class="scNavRowText">
1094                <span class="scNavRowTitle">Best time to post</span>
1095                
1096              </span>
1097            </a>
1098            <a class="scNavRow scNavRowBare" href="/tools/schedule-validator">
1099              <span class="scNavRowText">
1100                <span class="scNavRowTitle">Schedule validator</span>
1101                
1102              </span>
1103            </a>
1104          </div>
1105          </div>
1106          <a class="scNavCallout" href="/instagram">
1107            <span class="scNavCalloutBadge">New</span><span class="scNavCalloutText">Schedule Instagram posts from Claude, Codex, or your own code</span>
1108            <span class="scNavCalloutCta">Instagram</span>
1109          </a>
1110        </div>
1111      </div>
1112      <div class="scNavAcc" data-nav-acc="platforms">
1113        <button class="scNavAccHead" type="button" aria-expanded="false" aria-controls="scNavAccBody-platforms">
1114          <span><span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><circle cx="12" cy="12" r="9" stroke="currentColor" stroke-width="1.6"/><path d="M3 12h18M12 3c2.8 2.6 4.2 5.8 4.2 9s-1.4 6.4-4.2 9c-2.8-2.6-4.2-5.8-4.2-9s1.4-6.4 4.2-9Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span>Platforms</span>
1115          <svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1116        </button>
1117        <div class="scNavAccBody" id="scNavAccBody-platforms" hidden>
1118          <div class="scNavPanelBody scNavPanelBody-platforms">
1119            <div class="scNavCol scNavColWide">
1120            <span class="scNavColLabel">All platforms</span>
1121            <div class="scNavPlatformGrid">
1122            <a class="scNavPlatform" href="/instagram">
1123              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/instagram.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1124              <span class="scNavRowTitle">Instagram</span>
1125            </a>
1126            <a class="scNavPlatform" href="/tiktok">
1127              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/tiktok.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1128              <span class="scNavRowTitle">TikTok</span>
1129            </a>
1130            <a class="scNavPlatform" href="/x">
1131              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/x.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1132              <span class="scNavRowTitle">X</span>
1133            </a>
1134            <a class="scNavPlatform" href="/linkedin">
1135              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/linkedin.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1136              <span class="scNavRowTitle">LinkedIn</span>
1137            </a>
1138            <a class="scNavPlatform" href="/facebook">
1139              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/facebook.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1140              <span class="scNavRowTitle">Facebook</span>
1141            </a>
1142            <a class="scNavPlatform" href="/youtube">
1143              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/youtube.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1144              <span class="scNavRowTitle">YouTube</span>
1145            </a>
1146            <a class="scNavPlatform" href="/reddit">
1147              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/reddit.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1148              <span class="scNavRowTitle">Reddit</span>
1149            </a>
1150            <a class="scNavPlatform" href="/discord">
1151              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/discord.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1152              <span class="scNavRowTitle">Discord</span>
1153            </a>
1154            <a class="scNavPlatform" href="/telegram">
1155              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/telegram.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1156              <span class="scNavRowTitle">Telegram</span>
1157            </a>
1158            <a class="scNavPlatform" href="/wordpress">
1159              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/wordpress.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1160              <span class="scNavRowTitle">WordPress</span>
1161            </a>
1162            <a class="scNavPlatform" href="/pinterest">
1163              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/pinterest.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1164              <span class="scNavRowTitle">Pinterest</span>
1165            </a>
1166            <a class="scNavPlatform" href="/snapchat">
1167              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/snapchat.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1168              <span class="scNavRowTitle">Snapchat</span>
1169            </a>
1170            </div>
1171          </div><div class="scNavCol">
1172            <span class="scNavColLabel">Popular</span>
1173            <a class="scNavRow scNavRowBare" href="/schedule-instagram-posts">
1174              <span class="scNavRowText">
1175                <span class="scNavRowTitle">Schedule Instagram posts</span>
1176                <span class="scNavRowNote">Feed, reels, and stories</span>
1177              </span>
1178            </a>
1179            <a class="scNavRow scNavRowBare" href="/linkedin-post-scheduler">
1180              <span class="scNavRowText">
1181                <span class="scNavRowTitle">LinkedIn post scheduler</span>
1182                <span class="scNavRowNote">Profiles and company pages</span>
1183              </span>
1184            </a>
1185            <a class="scNavRow scNavRowBare" href="/best-time-to-post-on-instagram">
1186              <span class="scNavRowText">
1187                <span class="scNavRowTitle">Best time to post on Instagram</span>
1188                
1189              </span>
1190            </a>
1191            <a class="scNavRow scNavRowBare" href="/best-time-to-post-on-tiktok">
1192              <span class="scNavRowText">
1193                <span class="scNavRowTitle">Best time to post on TikTok</span>
1194                
1195              </span>
1196            </a>
1197          </div>
1198          </div>
1199          <a class="scNavCallout" href="/integrations">
1200            <span class="scNavCalloutText">Every network, one API and one schedule</span>
1201            <span class="scNavCalloutCta">All integrations</span>
1202          </a>
1203        </div>
1204      </div>
1205      <div class="scNavAcc" data-nav-acc="developers">
1206        <button class="scNavAccHead" type="button" aria-expanded="false" aria-controls="scNavAccBody-developers">
1207          <span><span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><rect x="3" y="4" width="18" height="16" rx="3" stroke="currentColor" stroke-width="1.6"/><path d="m8 10 3 3-3 3M13 16h4" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg></span>Developers</span>
1208          <svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1209        </button>
1210        <div class="scNavAccBody" id="scNavAccBody-developers" hidden>
1211          <div class="scNavPanelBody scNavPanelBody-cards">
1212            <div class="scNavCards">
1213            <a class="scNavCard scNavCard-img" href="/social-media-scheduling-api" style="background-image: url('https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/platform/spokes/spoke-api-v2.webp')" data-watermark="API">
1214              <img class="scNavCardIcon" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/api.svg" alt="" width="26" height="26" loading="lazy" decoding="async">
1215              <span class="scNavCardTitle">API</span>
1216              <span class="scNavCardNote">Validate and apply schedules over REST</span>
1217            </a>
1218            <a class="scNavCard scNavCard-img" href="/mcp" style="background-image: url('https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/platform/spokes/spoke-mcp-v2.webp')" data-watermark="MCP">
1219              <img class="scNavCardIcon" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/mcp.svg" alt="" width="26" height="26" loading="lazy" decoding="async">
1220              <span class="scNavCardTitle">MCP</span>
1221              <span class="scNavCardNote">18 tools for Claude, ChatGPT, and Cursor</span>
1222            </a>
1223            <a class="scNavCard scNavCard-img" href="/social-media-cli" style="background-image: url('https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/platform/spokes/spoke-cli-v2.webp')" data-watermark="CLI">
1224              <img class="scNavCardIcon" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/cli.svg" alt="" width="26" height="26" loading="lazy" decoding="async">
1225              <span class="scNavCardTitle">CLI</span>
1226              <span class="scNavCardNote">Post from your terminal or from CI</span>
1227            </a>
1228          </div><div class="scNavCol">
1229            <span class="scNavColLabel">AI clients</span>
1230            <a class="scNavRow" href="/claude-social-media-integration">
1231              <span class="scNavRowIcon"><img src="/ui/agent-icons/claude.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1232              <span class="scNavRowText">
1233                <span class="scNavRowTitle">Claude</span>
1234                <span class="scNavRowNote">
1234Desktop, web, and Claude Code</span>
1235              </span>
1236            </a>
1237            <a class="scNavRow" href="/chatgpt-social-media-integration">
1238              <span class="scNavRowIcon"><img src="/ui/agent-icons/chatgpt.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1239              <span class="scNavRowText">
1240                <span class="scNavRowTitle">ChatGPT</span>
1241                <span class="scNavRowNote">Connect via the hosted MCP server</span>
1242              </span>
1243            </a>
1244            <a class="scNavRow" href="/codex-social-media-integration">
1245              <span class="scNavRowIcon"><img src="/ui/agent-icons/codex.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1246              <span class="scNavRowText">
1247                <span class="scNavRowTitle">Codex</span>
1248                <span class="scNavRowNote">OpenAI's coding agent</span>
1249              </span>
1250            </a>
1251            <a class="scNavRow" href="/ai-agent">
1252              <span class="scNavRowIcon"><img src="/ui/agent-icons/openclaw.png" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1253              <span class="scNavRowText">
1254                <span class="scNavRowTitle">OpenClaw</span>
1255                <span class="scNavRowNote">Run the skill in your own agent</span>
1256              </span>
1257            </a>
1258          </div>
1259          </div>
1260          <a class="scNavCallout" href="/docs">
1261            <span class="scNavCalloutText scNavCalloutMono">npm install -g socialclaw</span>
1262            <span class="scNavCalloutCta">Documentation</span>
1263          </a>
1264        </div>
1265      </div>
1266      <div class="scNavAcc" data-nav-acc="resources">
1267        <button class="scNavAccHead" type="button" aria-expanded="false" aria-controls="scNavAccBody-resources">
1268          <span><span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 5.5C4 4.7 4.7 4 5.5 4H12v16H5.5A1.5 1.5 0 0 1 4 18.5v-13Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><path d="M20 5.5c0-.8-.7-1.5-1.5-1.5H12v16h6.5a1.5 1.5 0 0 0 1.5-1.5v-13Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/></svg></span>Resources</span>
1269          <svg class="scNavChev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1270        </button>
1271        <div class="scNavAccBody" id="scNavAccBody-resources" hidden>
1272          <div class="scNavPanelBody scNavPanelBody-lists">
1273            <div class="scNavCol">
1274            <span class="scNavColLabel">Learn</span>
1275            <a class="scNavRow" href="/blog">
1276              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/blog.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1277              <span class="scNavRowText">
1278                <span class="scNavRowTitle">Blog</span>
1279                <span class="scNavRowNote">Guides, teardowns, and release notes</span>
1280              </span>
1281            </a>
1282            <a class="scNavRow" href="/changelog">
1283              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/changelog.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1284              <span class="scNavRowText">
1285                <span class="scNavRowTitle">Changelog</span>
1286                <span class="scNavRowNote">What shipped, and when</span>
1287              </span>
1288            </a>
1289            <a class="scNavRow" href="/use-cases">
1290              <span class="scNavRowIcon"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/usecases.svg" alt="" width="20" height="20" loading="lazy" decoding="async"></span>
1291              <span class="scNavRowText">
1292                <span class="scNavRowTitle">Use cases</span>
1293                <span class="scNavRowNote">How teams run their posting</span>
1294              </span>
1295            </a>
1296          </div>
1297          <div class="scNavCol">
1298            <span class="scNavColLabel">Compare</span>
1299            <a class="scNavRow scNavRowBare" href="/compare/postiz">
1300              <span class="scNavRowText">
1301                <span class="scNavRowTitle">SocialClaw vs Postiz</span>
1302                
1303              </span>
1304            </a>
1305            <a class="scNavRow scNavRowBare" href="/compare/buffer">
1306              <span class="scNavRowText">
1307                <span class="scNavRowTitle">SocialClaw vs Buffer</span>
1308                
1309              </span>
1310            </a>
1311            <a class="scNavRow scNavRowBare" href="/compare/hootsuite">
1312              <span class="scNavRowText">
1313                <span class="scNavRowTitle">SocialClaw vs Hootsuite</span>
1314                
1315              </span>
1316            </a>
1317            <a class="scNavRow scNavRowBare" href="/compare/later">
1318              <span class="scNavRowText">
1319                <span class="scNavRowTitle">SocialClaw vs Later</span>
1320                
1321              </span>
1322            </a>
1323            <a class="scNavRow scNavRowBare" href="/compare">
1324              <span class="scNavRowText">
1325                <span class="scNavRowTitle">All comparisons</span>
1326                
1327              </span>
1328            </a>
1329          </div>
1330          <div class="scNavCol">
1331            <span class="scNavColLabel">Alternatives</span>
1332            <a class="scNavRow scNavRowBare" href="/postiz-alternatives">
1333              <span class="scNavRowText">
1334                <span class="scNavRowTitle">Postiz alternatives</span>
1335                
1336              </span>
1337            </a>
1338            <a class="scNavRow scNavRowBare" href="/buffer-alternatives">
1339              <span class="scNavRowText">
1340                <span class="scNavRowTitle">Buffer alternatives</span>
1341                
1342              </span>
1343            </a>
1344            <a class="scNavRow scNavRowBare" href="/hootsuite-alternatives">
1345              <span class="scNavRowText">
1346                <span class="scNavRowTitle">Hootsuite alternatives</span>
1347                
1348              </span>
1349            </a>
1350            <a class="scNavRow scNavRowBare" href="/later-alternatives">
1351              <span class="scNavRowText">
1352                <span class="scNavRowTitle">Later alternatives</span>
1353                
1354              </span>
1355            </a>
1356            <a class="scNavRow scNavRowBare" href="/metricool-alternatives">
1357              <span class="scNavRowText">
1358                <span class="scNavRowTitle">Metricool alternatives</span>
1359                
1360              </span>
1361            </a>
1362          </div>
1363          </div>
1364          
1365        </div>
1366      </div>
1367      <a class="scNavDrawerTop" href="/pricing"><span class="scNavItemIcon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M11.5 3H5.8A2.8 2.8 0 0 0 3 5.8v5.7c0 .5.2 1 .6 1.4l8.5 8.5c.8.8 2 .8 2.8 0l5.7-5.7c.8-.8.8-2 0-2.8l-8.5-8.5c-.4-.4-.9-.6-1.4-.6Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/><circle cx="8.3" cy="8.3" r="1.3" stroke="currentColor" stroke-width="1.6"/></svg></span>Pricing</a>
1368      <div class="scNavDrawerActions">
1369        <a class="scNavCta" href="/sign-in?next=%2Fdashboard">
1370          <span class="scNavCtaShine" aria-hidden="true"></span>
1371          <span class="scNavCtaLabel">Log in</span>
1372        </a>
1373      </div>
1374    </div>
1375  </header>
1376
1377    <section id="pricingStatus" class="statusBar" aria-live="polite"></section>
1378
1379    <section class="panel pricingPanel">
1380      <div class="pricingPanelInner">
1381        <div class="pricingHead">
1382          <div>
1383            <h1 class="pricingHeading">Choose your plan</h1>
1384            <p class="pricingSub">Start free for 7 days. Cancel anytime.</p>
1385          </div>
1386          <div class="toggle" role="group" aria-label="Billing interval">
1387            <button id="billingMonthly" class="isActive" type="button">Monthly</button>
1388            <button id="billingYearly" type="button">Yearly <span class="saveTag">Save 20%</span></button>
1389          </div>
1390        </div>
1391
1392        <div class="pricingMain">
1393        <section class="cards" role="radiogroup" aria-label="Cho
1393ose a plan">
1394          <article class="planCard" data-plan-card="starter" data-plan-name="Starter" role="radio" tabindex="0" aria-checked="false">
1395            <span class="planTick" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none"><path d="M5 12.5l4 4L19 7" stroke="#fff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
1396            <div class="planTop"><span class="planName">Starter</span></div>
1397            <div class="planScale">3 accounts · 200 posts / month</div>
1398            <div class="trialPrice">
1399              <span class="priceBig">$0</span>
1400              <span class="trialLead">Free for 7 days</span>
1401              <span class="trialAfter" data-monthly-after="then <strong>$15</strong>/mo" data-yearly-after="then <strong>$10</strong>/mo billed yearly">then <strong>$15</strong>/mo</span>
1402            </div>
1403          </article>
1404
1405          <article class="planCard" data-plan-card="startup" data-plan-name="Startup" role="radio" tabindex="0" aria-checked="false">
1406            <span class="planTick" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none"><path d="M5 12.5l4 4L19 7" stroke="#fff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
1407            <div class="planTop"><span class="planName">Startup</span></div>
1408            <div class="planScale">6 accounts · 400 posts / month</div>
1409            <div class="planPriceRow">
1410              <span class="priceBig" data-monthly="29" data-yearly="19">$29</span>
1411              <span class="priceSuffix" data-price-suffix>/ month</span>
1412            </div>
1413          </article>
1414
1415          <article class="planCard" data-plan-card="plus" data-plan-name="Plus" role="radio" tabindex="0" aria-checked="false">
1416            <span class="planTick" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none"><path d="M5 12.5l4 4L19 7" stroke="#fff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
1417            <div class="planTop"><span class="planName">Plus</span><span class="planTag" data-plan-tag>Most popular</span></div>
1418            <div class="planScale">20 accounts · 1,000 posts / month</div>
1419            <div class="planPriceRow">
1420              <span class="priceBig" data-monthly="67" data-yearly="49">$67</span>
1421              <span class="priceSuffix" data-price-suffix>/ month</span>
1422            </div>
1423          </article>
1424
1425          <article class="planCard" data-plan-card="pro" data-plan-name="Pro" role="radio" tabindex="0" aria-checked="false">
1426            <span class="planTick" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none"><path d="M5 12.5l4 4L19 7" stroke="#fff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
1427            <div class="planTop"><span class="planName">Pro</span></div>
1428            <div class="planScale">50 accounts · 2,500 posts / month</div>
1429            <div class="planPriceRow">
1430              <span class="priceBig" data-monthly="99" data-yearly="80">$99</span>
1431              <span class="priceSuffix" data-price-suffix>/ month</span>
1432            </div>
1433          </article>
1434        </section>
1435
1436        <div class="includedBox">
1437          <span class="includedTitle">Included in every plan</span>
1438          <ul class="includedGrid">
1439            <li><img src="/ui/pricing-icons/agents.png" alt="" aria-hidden="true" />CLI &amp; agent skills</li>
1440            <li><img src="/ui/pricing-icons/api.png" alt="" aria-hidden="true" />Hosted workspace API</li>
1441            <li><img src="/ui/pricing-icons/cloud.png" alt="" aria-hidden="true" />Media storage included</li>
1442          </ul>
1443        </div>
1444        </div>
1445
1446        <div class="ctaRow">
1447          <button class="primaryButton ctaButton" type="button" id="planCta">Continue with Plus</button>
1448          <p id="resumeNote" class="ctaMeta" hidden></p>
1449          <div class="ctaMeta">
1450            <button class="yearlyHint" type="button" id="yearlyHint">Save 20% by switching to yearly billing</button>
1451          </div>
1452        </div>
1453      </div>
1454    </section>
1455
1456    <section class="logoTickerSection" aria-label="Supported publisher and agent ecosystems">
1457      <div class="logoTickerWrap">
1458        <div class="logoTickerTrack">
1459          <div class="logoTickerItem"><img src="/ai-agent/assets/images/ynYWk8WViMHEFOFrhuc5s6Uk4--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1460          <div class="logoTickerItem"><img src="/ai-agent/assets/images/olHOplK69vWPpiwnwGzsgPO46r4--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1461          <div class="logoTickerItem"><img src="/ai-agent/assets/images/NW5hgMVyvCsbd39oOX9JsTxPTg--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1462          <div class="logoTickerItem"><img src="/ai-agent/assets/images/SdgTMwTPTw80SRjnYhxwsx9JERw--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1463          <div class="logoTickerItem"><img src="/ai-agent/assets/images/AbyKvu9Ua60C924WhwuMgI1sjxA--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1464          <div class="logoTickerItem"><img src="/ai-agent/assets/images/rnPOnoMto5Odpw0YUQ4K2ok0QDM--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1465          <div class="logoTickerItem"><img src="/ai-agent/assets/images/QPq8Tl5FxIrx5cUvS0AkOaPk--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1466          <div class="logoTickerItem"><img src="/ai-agent/assets/images/der9w9nQ8sICEBZQMnfZmqxKR8--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1467          <div class="logoTickerItem"><img src="/ai-agent/assets/images/kzUvZXKhzQzuSOvwp5q1dczGE--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1468          <div class="logoTickerItem"><img src="/ai-agent/assets/images/PccVjkoQ0XyjGbinfMBbG8z0NrI--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1469          <div class="logoTickerItem"><img src="/ai-agent/assets/images/wbLzW2xzoM7UrF4lZKt2DVmM4--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1470          <div class="logoTickerItem"><img src="/ai-agent/assets/images/k6azspIsIdhz7Or29ysVai6M3c--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1471          <div class="logoTickerItem"><img src="/ai-agent/assets/images/CYqZvESFsoAwQqdIgPxPwLcagFA--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1472          <div class="logoTickerItem"><img src="/ai-agent/assets/images/ynYWk8WViMHEFOFrhuc5s6Uk4--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1473          <div class="logoTickerItem"><img src="/ai-agent/assets/images/olHOplK69vWPpiwnwGzsgPO46r4--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1474          <div class="logoTickerItem"><img src="/ai-agent/assets/images/NW5hgMVyvCsbd39oOX9JsTxPTg--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1475          <div class="logoTickerItem"><img src="/ai-agent/assets/images/SdgTMwTPTw80SRjnYhxwsx9JERw--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1476          <div class="logoTickerItem"><img src="/ai-agent/assets/images/AbyKvu9Ua60C924WhwuMgI1sjxA--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1477          <div class="logoTickerItem"><img src="/ai-agent/assets/images/rnPOnoMto5Odpw0YUQ4K2ok0QDM--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1478          <div class="logoTickerItem"><img src="/ai-agent/assets/images/QPq8Tl5FxIrx5cUvS0AkOaPk--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1479          <div class="logoTickerItem"><img src="/ai-agent/assets/images/der9w9nQ8sICEBZQMnfZmqxKR8--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1480          <div class="logoTickerItem"><img src="/ai-agent/assets/images/kzUvZXKhzQzuSOvwp5q1dczGE--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1481          <div class="logoTickerItem"><img src="/ai-agent/assets/images/PccVjkoQ0XyjGbinfMBbG8z0NrI--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1482          <div class="logoTickerItem"><img src="/ai-agent/assets/images/wbLzW2xzoM7UrF4lZKt2DVmM4--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1483          <div class="logoTickerItem"><img src="/ai-agent/assets/images/k6azspIsIdhz7Or29ysVai6M3c--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1484          <div class="logoTickerItem"><img src="/ai-agent/assets/images/CYqZvESFsoAwQqdIgPxPwLcagFA--7428a38ad2.png" alt="" aria-hidden="true" /></div>
1485        </div>
1486      </div>
1487    </section>
1488  </main>
1489
1490    <footer class="sc-footer2">
1491    <canvas class="sc-footer2-rays" aria-hidden="true"></canvas>
1492    <div class="sc-sec-inner sc-footer2-inner">
1493      <div class="sc-footer2-cta">
1494        <img class="sc-footer2-cta-claw" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/claw-left-2.png" alt="" aria-hidden="true">
1495        <div class="sc-footer2-cta-center">
1496          <h2>Ready to grow<br>your socials?</h2>
1497          <a class="sc-hero-start-free" href="/sign-up?next=%2Fdashboard">Start free</a>
1498        </div>
1499        <img class="sc-footer2-cta-socials" loading="lazy" src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/socialicons-2.webp" alt="Supported social platforms" width="820" height="770">
1500      </div>
1501      <div class="sc-footer2-grid">
1502        <div class="sc-footer2-col">
1503        <span class="sc-footer2-label">Platforms</span>
1504        <div class="sc-footer2-platform">
1505        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1506          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/instagram.png" alt="" width="14" height="14" loading="lazy" decoding="async">Instagram</span>
1507          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1508        </button>
1509        <div class="sc-footer2-platform-body" hidden>
1510          <a href="/instagram">Overview</a>
1511          <a href="/instagram/api">API</a>
1512          <a href="/instagram/mcp">MCP</a>
1513          <a href="/instagram/cli">CLI</a>
1514        </div>
1515      </div>
1516        <div class="sc-footer2-platform">
1517        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1518          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/tiktok.png" alt="" width="14" height="14" loading="lazy" decoding="async">TikTok</span>
1519          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1520        </button>
1521        <div class="sc-footer2-platform-body" hidden>
1522          <a href="/tiktok">Overview</a>
1523          <a href="/tiktok/api">API</a>
1524          <a href="/tiktok/mcp">MCP</a>
1525          <a href="/tiktok/cli">CLI</a>
1526        </div>
1527      </div>
1528        <div class="sc-footer2-platform">
1529        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1530          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/x.png" alt="" width="14" height="14" loading="lazy" decoding="async">X</span>
1531          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1532        </button>
1533        <div class="sc-footer2-platform-body" hidden>
1534          <a href="/x">Overview</a>
1535          <a href="/x/api">API</a>
1536          <a href="/x/mcp">MCP</a>
1537          <a href="/x/cli">CLI</a>
1538        </div>
1539      </div>
1540        <div class="sc-footer2-platform">
1541        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1542          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/linkedin.png" alt="" width="14" height="14" loading="lazy" decoding="async">LinkedIn</span>
1543          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1544        </button>
1545        <div class="sc-footer2-platform-body" hidden>
1546          <a href="/linkedin">Overview</a>
1547          <a href="/linkedin/api">API</a>
1548          <a href="/linkedin/mcp">MCP</a>
1549          <a href="/linkedin/cli">CLI</a>
1550        </div>
1551      </div>
1552        <div class="sc-footer2-platform">
1553        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1554          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/facebook.png" alt="" width="14" height="14" loading="lazy" decoding="async">Facebook</span>
1555          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1556        </button>
1557        <div class="sc-footer2-platform-body" hidden>
1558          <a href="/facebook">Overview</a>
1559          <a href="/facebook/api">API</a>
1560          <a href="/facebook/mcp">MCP</a>
1561          <a href="/facebook/cli">CLI</a>
1562        </div>
1563      </div>
1564        <div class="sc-footer2-platform">
1565        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1566          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/youtube.png" alt="" width="14" height="14" loading="lazy" decoding="async">YouTube</span>
1567          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1568        </button>
1569        <div class="sc-footer2-platform-body" hidden>
1570          <a href="/youtube">Overview</a>
1571          <a href="/youtube/api">API</a>
1572          <a href="/youtube/mcp">MCP</a>
1573          <a href="/youtube/cli">CLI</a>
1574        </div>
1575      </div>
1576        <div class="sc-footer2-platform">
1577        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1578          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/reddit.png" alt="" width="14" height="14" loading="lazy" decoding="async">Reddit</span>
1579          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1580        </button>
1581        <div class="sc-footer2-platform-body" hidden>
1582          <a href="/reddit">Overview</a>
1583          <a href="/reddit/api">API</a>
1584          <a href="/reddit/mcp">MCP</a>
1585          <a href="/reddit/cli">CLI</a>
1586        </div>
1587      </div>
1588        <div class="sc-footer2-platform">
1589        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1590          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/discord.png" alt="" width="14" height="14" loading="lazy" decoding="async">Discord</span>
1591          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1592        </button>
1593        <div class="sc-footer2-platform-body" hidden>
1594          <a href="/discord">Overview</a>
1595          <a href="/discord/api">API</a>
1596          <a href="/discord/mcp">MCP</a>
1597          <a href="/discord/cli">CLI</a>
1598        </div>
1599      </div>
1600        <div class="sc-footer2-platform">
1601        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1602          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/telegram.png" alt="" width="14" height="14" loading="lazy" decoding="async">Telegram</span>
1603          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1604        </button>
1605        <div class="sc-footer2-platform-body" hidden>
1606          <a href="/telegram">Overview</a>
1607          <a href="/telegram/api">API</a>
1608          <a href="/telegram/mcp">MCP</a>
1609          <a href="/telegram/cli">CLI</a>
1610        </div>
1611      </div>
1612        <div class="sc-footer2-platform">
1613        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1614          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/wordpress.png" alt="" width="14" height="14" loading="lazy" decoding="async">WordPress</span>
1615          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1616        </button>
1617        <div class="sc-footer2-platform-body" hidden>
1618          <a href="/wordpress">Overview</a>
1619          <a href="/wordpress/api">API</a>
1620          <a href="/wordpress/mcp">MCP</a>
1621          <a href="/wordpress/cli">CLI</a>
1622        </div>
1623      </div>
1624        <div class="sc-footer2-platform">
1625        <button class="sc-footer2-platform-toggle" type="button" aria-expanded="false">
1626          <span class="sc-footer2-platform-name"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/pinterest.png" alt="" width="14" height="14" loading="lazy" decoding="async">Pinterest</span>
1627          <svg class="sc-footer2-platform-chev" width="10" height="10" viewBox="0 0 10 10" aria-hidden="true"><path d="M2 3.8 5 6.6l3-2.8" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
1628        </button>
1629        <div class="sc-footer2-platform-body" hidden>
1630          <a href="/pinterest">Overview</a>
1631          <a href="/pinterest/api">API</a>
1632          <a href="/pinterest/mcp">MCP</a>
1633          <a href="/pinterest/cli">CLI</a>
1634        </div>
1635      </div>
1636        <a class="sc-footer2-platform-link" href="/snapchat"><img src="https://d3a8s0fssi8mjd.cloudfront.net/cdn/ui/redesign/social/glyph/snapchat.png" alt="" width="14" height="14" loading="lazy" decoding="async">Snapchat</a>
1637      </div>
1638        <div class="sc-footer2-col">
1639        <span class="sc-footer2-label">Developers</span>
1640        <a href="/docs">Documentation</a>
1641        <a href="/docs/api">API</a>
1642        <a href="/mcp">MCP server</a>
1643        <a href="/social-media-cli">CLI</a>
1644        <a href="https://github.com/ndesv21/socialclaw" target="_blank" rel="noopener">GitHub</a>
1645        <a href="https://www.npmjs.com/package/socialclaw" target="_blank" rel="noopener">npm</a>
1646      </div>
1647        <div class="sc-footer2-col">
1648        <span class="sc-footer2-label">AI clients</span>
1649        <a href="/claude-social-media-integration">Claude</a>
1650        <a href="/claude-code-social-media-integration">Claude Code</a>
1651        <a href="/chatgpt-social-media-integration">ChatGPT</a>
1652        <a href="/codex-social-media-integration">Codex</a>
1653        <a href="/cursor-social-media-integration">Cursor</a>
1654        <a href="/n8n-social-media-automation">n8n</a>
1655        <a href="/zapier-social-media-automation">Zapier</a>
1656        <a href="/make-social-media-automation">Make</a>
1657      </div>
1658        <div class="sc-footer2-col">
1659        <span class="sc-footer2-label">Product</span>
1660        <a href="/pricing">Pricing</a>
1661        <a href="/agentic-social-media-scheduler">Agentic scheduler</a>
1662        <a href="/viral-video-generator">Viral video generator</a>
1663        <a href="/ugc-marketplace">UGC creator marketplace</a>
1664        <a href="/integrations">Integrations</a>
1665        <a href="/use-cases">Use cases</a>
1666        <a href="/workflows">Workflows</a>
1667        <a href="/changelog">Changelog</a>
1668      </div>
1669        <div class="sc-footer2-col">
1670        <span class="sc-footer2-label">Compare</span>
1671        <a href="/compare/postiz">vs Postiz</a>
1672        <a href="/compare/buffer">vs Buffer</a>
1673        <a href="/compare/hootsuite">vs Hootsuite</a>
1674        <a href="/compare/later">vs Later</a>
1675        <a href="/compare/publer">vs Publer</a>
1676        <a href="/compare/socialbee">vs SocialBee</a>
1677        <a href="/compare/ayrshare">vs Ayrshare</a>
1678        <a href="/compare">All comparisons</a>
1679      </div>
1680        <div class="sc-footer2-col">
1681        <span class="sc-footer2-label">Alternatives</span>
1682        <a href="/postiz-alternatives">Postiz alternatives</a>
1683        <a href="/buffer-alternatives">Buffer alternatives</a>
1684        <a href="/hootsuite-alternatives">Hootsuite alternatives</a>
1685        <a href="/later-alternatives">Later alternatives</a>
1686        <a href="/metricool-alternatives">Metricool alternatives</a>
1687        <a href="/publer-alternatives">Publer alternatives</a>
1688        <a href="/ayrshare-alternatives">Ayrshare alternatives</a>
1689        <a href="/blotato-alternatives">Blotato alternatives</a>
1690      </div>
1691        <div class="sc-footer2-col">
1692        <span class="sc-footer2-label">Free tools</span>
1693        <a href="/tools/instagram-caption-generator">Instagram caption generator</a>
1694        <a href="/tools/linkedin-post-generator">LinkedIn post generator</a>
1695        <a href="/tools/best-time-to-post-calculator">Best time to post</a>
1696        <a href="/tools/schedule-validator">Schedule validator</a>
1697        <a href="/tools/api-payload-validator">API payload validator</a>
1698        <a href="/best-time-to-post-on-instagram">Best time on Instagram</a>
1699        <a href="/best-time-to-post-on-tiktok">Best time on TikTok</a>
1700      </div>
1701        <div class="sc-footer2-col">
1702        <span class="sc-footer2-label">Resources</span>
1703        <a href="/blog">Blog</a>
1704        <a href="/changelog">Changelog</a>
1705        <a href="/docs/api">API reference</a>
1706        <a href="/llms.txt">llms.txt</a>
1707      </div>
1708        <div class="sc-footer2-col">
1709        <span class="sc-footer2-label">Company</span>
1710        <a href="/about">About</a>
1711        <a href="/contact">Contact</a>
1712        <a href="/privacy">Privacy</a>
1713        <a href="/terms">Terms</a>
1714        <a href="/legal/data-deletion">Data deletion</a>
1715      </div>
1716      </div>
1717      <div class="sc-footer2-badges"><a class="sc-footer2-badge" href="https://findly.tools/socialclaw?utm_source=socialclaw" target="_blank" rel="noopener"><img src="/media/badges/findly-featured-dark.svg" alt="Featured on Findly.tools" height="44" loading="lazy"></a><a class="sc-footer2-badge" href="https://fazier.com/launches/getsocialclaw.com" target="_blank" rel="noopener"><img src="/media/badges/fazier-featured-dark.svg" alt="Fazier badge" height="44" loading="lazy"></a><a class="sc-footer2-badge" href="https://goodaitools.com/ai/getsocialclaw" target="_blank" rel="noopener"><img src="/media/badges/goodaitools-featured-dark.png" alt="Good AI Tools" height="44" loading="lazy"></a><a class="sc-footer2-badge" href="https://twelve.tools" target="_blank" rel="noopener"><img src="/media/badges/twelve-tools-featured-dark.svg" alt="Featured on Twelve Tools" height="44" loading="lazy"></a><a class="sc-footer2-badge" href="https://wired.business" target="_blank" rel="noopener"><img src="/media/badges/wired-business-featured-dark.svg" alt="Featured on Wired Business" height="44" loading="lazy"></a><a class="sc-footer2-badge" href="https://dang.ai" target="_blank" rel="dofollow noopener"><img src="/media/badges/dang-verified-dark.png" alt="Verified on DANG!" height="44" loading="lazy"></a><a class="sc-footer2-badge" href="https://kittylaunch.com/p/socialclaw?utm_source=badge" target="_blank" rel="noopener"><img src="/media/badges/kittylaunch-verified-dark.svg" alt="SocialClaw — Verified by KittyLaunch" height="44" loading="lazy"></a></div>
1718      <div class="sc-footer2-bottom">
1719        <a class="sc-footer2-brand" href="/">
1720          <img src="/branding/socialclaw-app-icon.png" alt="" width="24" height="24" loading="lazy" decoding="async">
1721          <span>SocialClaw</span>
1722        </a>
1723        <span>&copy; 2026 SocialClaw Inc.</span>
1724        <span>getsocialclaw.com</span>
1725      </div>
1726    </div>
1727  </footer>
1728
1729
1730  
1730<script src="/ui/site-topbar.js"></script>
1730
1731  
1731<script src="/ui/platform-page.js"></script>
1731
1732  
1732<script src="/ui/support-widget.js"></script>
1732
1733  
1733<script>
1734    const monthlyBtn = document.getElementById("billingMonthly");
1735    const yearlyBtn = document.getElementById("billingYearly");
1736    const priceEls = Array.from(document.querySelectorAll("[data-monthly][data-yearly]"));
1737    const suffixEls = Array.from(document.querySelectorAll("[data-price-suffix]"));
1738    const starterAfterEls = Array.from(document.querySelectorAll("[data-monthly-after][data-yearly-after]"));
1739    const navSessionLinks = Array.from(document.querySelectorAll(
1740      "[data-site-nav] .scNavActions .scNavCta, [data-site-nav] .scNavDrawerActions .scNavCta"
1741    ));
1742    const statusEl = document.getElementById("pricingStatus");
1743    const planCards = Array.from(document.querySelectorAll("[data-plan-card]"));
1744    const cardByPlan = new Map(planCards.map((card) => [card.dataset.planCard, card]));
1745    const planCta = document.getElementById("planCta");
1746    const yearlyHint = document.getElementById("yearlyHint");
1747    const searchParams = new URLSearchParams(window.location.search);
1748    const state = {
1749      billingMode: "monthly",
1750      billingState: null,
1751      billingStatePromise: null,
1752      billingStateLoaded: false,
1753      signedOut: false,
1754      processingPoll: null,
1755      autoStarted: false,
1756      checkoutPending: false,
1757      selectedPlan: "plus"
1758    };
1759
1760    function escapeHtml(value) {
1761      return String(value || "").replace(/[&<>\"']/g, (match) => ({
1762        "&": "&amp;",
1763        "<": "&lt;",
1764        ">": "&gt;",
1765        "\"": "&quot;",
1766        "'": "&#39;"
1767      })[match]);
1768    }
1769
1770    function showStatus(tone, title, detail = "") {
1771      statusEl.dataset.tone = tone || "info";
1772      statusEl.classList.add("isVisible");
1773      statusEl.innerHTML = `<strong>${escapeHtml(title)}</strong><span>${escapeHtml(detail)}</span>`;
1774    }
1775
1776    function hideStatus() {
1777      statusEl.classList.remove("isVisible");
1778      statusEl.innerHTML = "";
1779      delete statusEl.dataset.tone;
1780    }
1781
1782    // Opening a checkout takes a few seconds: our API call, then Lemon Squeezy's
1783    // redirect, then their ~280KB page. Until this existed the button sat silent
1784    // for all of it, so buyers concluded it was broken and clicked again — and
1785    // every extra click minted another checkout (one person managed six).
1786    function setCheckoutPending(pending, label = "Starting checkout") {
1787      state.checkoutPending = Boolean(pending);
1788      if (!planCta) {
1789        return;
1790      }
1791      if (state.checkoutPending) {
1792        planCta.disabled = true;
1793        planCta.classList.add("isBusy");
1794        planCta.setAttribute("aria-busy", "true");
1795        planCta.innerHTML = `<span class="ctaSpinner" aria-hidden="true"></span>${escapeHtml(label)}`;
1796        return;
1797      }
1798      planCta.classList.remove("isBusy");
1799      planCta.removeAttribute("aria-busy");
1800      updateCta();
1801    }
1802
1803    async function apiRequest(method, url, body) {
1804      const response = await fetch(url, {
1805        method,
1806        headers: body ? { "content-type": "application/json" } : undefined,
1807        body: body ? JSON.stringify(body) : undefined,
1808        credentials: "same-origin"
1809      });
1810
1811      const raw = await response.text();
1812      let payload = {};
1813      try {
1814        payload = raw ? JSON.parse(raw) : {};
1815      } catch {
1816        payload = { message: raw || `HTTP ${response.status}` };
1817      }
1818
1819      if (!response.ok) {
1820        const error = new Error(payload?.message || `HTTP ${response.status}`);
1821        error.status = response.status;
1822        error.code = payload?.code || null;
1823        error.details = payload?.details || null;
1824        throw error;
1825      }
1826
1827      return payload;
1828    }
1829
1830    function applyBillingMode(mode) {
1831      const yearly = mode === "yearly";
1832      state.billingMode = yearly ? "yearly" : "monthly";
1833      monthlyBtn.classList.toggle("isActive", !yearly);
1834      yearlyBtn.classList.toggle("isActive", yearly);
1835
1836      for (const el of priceEls) {
1837        const next = yearly ? el.dataset.yearly : el.dataset.monthly;
1838        el.textContent = `$${next}`;
1839      }
1840
1841      for (const el of suffixEls) {
1842        el.textContent = yearly ? "/ month billed yearly" : "/ month";
1843      }
1844
1845      for (const el of starterAfterEls) {
1846        el.innerHTML = yearly ? el.dataset.yearlyAfter : el.dataset.monthlyAfter;
1847      }
1848
1849      if (yearlyHint) {
1850        yearlyHint.hidden = yearly;
1851      }
1852
1853      renderPricingUi();
1854    }
1855
1856    // SocialClaw creates the Lemon Squeezy checkout server-side and redirects to a
1857    // *.lemonsqueezy.com URL, so affiliate.js (which only rewrites on-page <a href> links)
1858    // never gets to tag it. Mirror that behavior here: read the ref affiliate.js stored in
1859    // the ls_aff_ref cookie and append it as aff_ref before we send the buyer to checkout.
1860    function withAffiliateRef(checkoutUrl) {
1861      try {
1862        // Only touch Lemon Squeezy checkout URLs, and never if a ref is already present.
1863        if (typeof checkoutUrl !== "string" || !/^https?:\/\/[^/]+\.lemonsqueezy\.com\b/i.test(checkoutUrl)) {
1864          return checkoutUrl;
1865        }
1866        if (/[?&]aff_ref=/.test(checkoutUrl)) {
1867          return checkoutUrl;
1868        }
1869        const match = document.cookie.match(/(?:^|;\s*)ls_aff_ref=([^;]+)/);
1870        const ref = match ? match[1] : "";
1871        if (!ref) {
1872          return checkoutUrl;
1873        }
1874        // Append only — do NOT re-serialize existing params, so any signed/expiring
1875        // params already on the checkout URL stay byte-for-byte intact.
1876        const sep = checkoutUrl.indexOf("?") === -1 ? "?" : "&";
1877        return checkoutUrl + sep + "aff_ref=" + encodeURIComponent(ref);
1878      } catch (err) {
1879        /* never block checkout on affiliate tagging — fall back to the untagged URL */
1880      }
1881      return checkoutUrl;
1882    }
1883
1884    function getSignInRedirect(plan = null) {
1885      const redirectUrl = new URL("/pricing", window.location.origin);
1886      if (plan) {
1887        redirectUrl.searchParams.set("plan", plan);
1888        redirectUrl.searchParams.set("interval", state.billingMode);
1889      }
1890      return `/auth/google/start?redirect=${encodeURIComponent(`${redirectUrl.pathname}${redirectUrl.search}`)}`;
1891    }
1892
1893    async function openBillingAction(plan) {
1894      // One checkout at a time. Without this, a second click while the first
1895      // request is in flight creates a second Lemon Squeezy checkout.
1896      if (state.checkoutPending) {
1897        return;
1898      }
1899
1900      hideStatus();
1901      // Claim the button BEFORE the first await, so the feedback is instant
1902      // rather than arriving with the response it is meant to cover.
1903      setCheckoutPending(true);
1904      // Paths that navigate away leave the button claimed: releasing it would
1905      // invite another click during the (visible, multi-second) page unload.
1906      let navigating = false;
1907
1908      try {
1909        // A click can land before the initial billing-state fetch resolves. Wait
1910        // for the in-flight load so "still loading" is never mistaken for
1911        // "signed out" (which is what used to bounce logged-in buyers to Google).
1912        if (!state.billingStateLoaded && state.billingStatePromise) {
1913          try {
1914            await state.billingStatePromise;
1915          } catch {
1916            /* fall through to the checks below */
1917          }
1918        }
1919
1920        // A transient initial failure should not poison the page until refresh.
1921        // Retry once on the buyer's click, then continue directly to checkout if
1922        // the retry succeeds.
1923        if (!state.billingState && !state.signedOut) {
1924          try {
1925            state.billingStatePromise = loadBillingState();
1926            await state.billingStatePromise;
1927            renderPricingUi();
1928          } catch (error) {
1929            showStatus("warn", "Couldn't reach billing", error.message || "Please try again in a moment.");
1930            return;
1931          }
1932        }
1933
1934        if (!state.billingState) {
1935          if (state.signedOut) {
1936            // Confirmed signed out (401 from billing/state) — start sign-in.
1937            navigating = true;
1938            setCheckoutPending(true, "Taking you to sign in");
1939            window.location.href = getSignInRedirect(plan);
1940            return;
1941          }
1942          // Billing state failed to load for some other reason — let the buyer
1943          // retry instead of bouncing them through a pointless Google round-trip.
1944          showStatus("warn", "Couldn't reach billing", "Please try again in a moment.");
1945          return;
1946        }
1947
1948        const billing = state.billingState.billing || {};
1949        const workspace = state.billingState.workspace || {};
1950
1951        if (Boolean(billing.canManage) && !workspace.cancelAtPeriodEnd) {
1952          // Existing subscriber. If they picked a DIFFERENT plan, send them to the
1953          // Lemon Squeezy plan picker (change_plan) instead of the generic portal
1954          // overview — otherwise their plan choice is silently dropped.
1955          const wantsPlanChange = plan && (plan !== workspace.plan || workspace.billingInterval !== state.billingMode);
1956          const payload = await apiRequest(
1957            "POST",
1958            "/v1/billing/manage",
1959            wantsPlanChange ? { intent: "change_plan" } : undefined
1960          );
1961          if (wantsPlanChange) {
1962            showStatus("info", "Opening plan change", "Confirm the switch on the next screen. Your trial and remaining time carry over.");
1963          }
1964          navigating = true;
1965          setCheckoutPending(true, "Opening billing");
1966          window.location.href = payload.url;
1967          return;
1968        }
1969
1970        const payload = await apiRequest("POST", "/v1/billing/checkout", {
1971          plan,
1972          billingInterval: state.billingMode
1973        });
1974
1975        if (["manage", "resume"].includes(payload.mode) && payload.url) {
1976          navigating = true;
1977          setCheckoutPending(true, "Opening billing");
1978          window.location.href = payload.url;
1979          return;
1980        }
1981
1982        if (!payload.url) {
1983          throw new Error("Billing checkout did not return a redirect URL");
1984        }
1985
1986        navigating = true;
1987        setCheckoutPending(true, "Opening secure checkout");
1988        showStatus("info", "Opening secure checkout", "Lemon Squeezy is loading. This can take a few seconds, so please do not refresh.");
1989        window.location.href = withAffiliateRef(payload.url);
1990      } finally {
1991        // Only hand the button back when the buyer is staying on this page.
1992        if (!navigating) {
1993          setCheckoutPending(false);
1994        }
1995      }
1996    }
1997
1998    function planDisplayName(plan) {
1999      return cardByPlan.get(plan)?.dataset.planName || plan;
2000    }
2001
2002    const PLAN_TIER_ORDER = ["starter", "startup", "plus", "pro"];
2003
2004    function getPlanActionLabel(plan) {
2005      // Existing subscriber choosing a different plan = a change, not a new trial.
2006      const workspace = state.billingState?.workspace || null;
2007      const billing = state.billingState?.billing || null;
2008      const hasSub = Boolean(billing?.canManage && workspace);
2009      if (billing?.canResume && plan === workspace?.plan) return "Resume subscription";
2010      if (workspace?.hasBillingSubscription && (workspace.cancelAtPeriodEnd || workspace.subscriptionStatus === "canceled")) {
2011        return `Resubscribe to ${planDisplayName(plan)}`;
2012      }
2013      if (hasSub && plan === workspace.plan && workspace.billingInterval !== state.billingMode) return "Change billing interval";
2014      if (hasSub && plan !== workspace.plan) {
2015        const from = PLAN_TIER_ORDER.indexOf(workspace.plan);
2016        const to = PLAN_TIER_ORDER.indexOf(plan);
2017        const verb = from >= 0 && to >= 0 && to < from ? "Switch to" : "Upgrade to";
2018        return `${verb} ${planDisplayName(plan)}`;
2019      }
2020      return plan === "starter"
2021        ? "Start 7-day free trial"
2022        : `Continue with ${planDisplayName(plan)}`;
2023    }
2024
2025    function selectPlan(plan) {
2026      if (!cardByPlan.has(plan)) {
2027        return;
2028      }
2029      state.selectedPlan = plan;
2030      for (const card of planCards) {
2031        const active = card.dataset.planCard === plan;
2032        card.classList.toggle("isSelected", active);
2033        card.setAttribute("aria-checked", active ? "true" : "false");
2034      }
2035      updateCta();
2036    }
2037
2038    function updateCta() {
2039      if (!planCta) {
2040        return;
2041      }
2042      // A billing-state refresh must never relabel a button that is mid-checkout;
2043      // setCheckoutPending(false) clears the flag before calling back in here.
2044      if (state.checkoutPending) {
2045        return;
2046      }
2047      const plan = state.selectedPlan;
2048      const workspace = state.billingState?.workspace || null;
2049      const billing = state.billingState?.billing || null;
2050      const signedIn = Boolean(workspace);
2051      const isCurrent = signedIn && workspace.plan === plan && ["trialing", "active"].includes(workspace.subscriptionStatus) && !workspace.cancelAtPeriodEnd && (!workspace.billingInterval || workspace.billingInterval === state.billingMode);
2052
2053      const resumeNote = document.getElementById("resumeNote");
2054      const canResume = Boolean(billing?.canResume && workspace?.plan === plan);
2055      if (resumeNote) {
2056        resumeNote.hidden = !canResume;
2057        resumeNote.textContent = canResume ? `Resumes your existing ${workspace.billingInterval === "yearly" ? "yearly" : "monthly"} subscription. Confirm renewal in billing.` : "";
2058      }
2059      planCta.disabled = false;
2060
2061      if (signedIn && state.billingState.billingAdmin === false) {
2062        planCta.textContent = "Only the workspace owner can change billing";
2063        planCta.disabled = true;
2064        return;
2065      }
2066      if (signedIn && billing && !billing.configured) {
2067        planCta.textContent = "Billing unavailable";
2068        planCta.disabled = true;
2069        return;
2070      }
2071      if (signedIn && billing && !billing.checkoutEnabled && !billing.canManage) {
2072        planCta.textContent = "Checkout unavailable";
2073        planCta.disabled = true;
2074        return;
2075      }
2076      if (isCurrent) {
2077        planCta.textContent = "Current plan";
2078        planCta.disabled = true;
2079        return;
2080      }
2081      planCta.textContent = getPlanActionLabel(plan);
2082    }
2083
2084    function renderPricingUi() {
2085      const workspace = state.billingState?.workspace || null;
2086      const signedIn = Boolean(workspace);
2087      for (const link of navSessionLinks) {
2088        link.href = signedIn ? "/dashboard" : getSignInRedirect();
2089        const label = link.querySelector(".scNavCtaLabel");
2090        if (label) {
2091          label.textContent = signedIn ? "Dashboard" : "Log in";
2092        }
2093      }
2094
2095      for (const card of planCards) {
2096        const plan = card.dataset.planCard;
2097        const isCurrent = signedIn && workspace.plan === plan && ["trialing", "active"].includes(workspace.subscriptionStatus) && !workspace.cancelAtPeriodEnd && (!workspace.billingInterval || workspace.billingInterval === state.billingMode);
2098        let tag = card.querySelector("[data-plan-tag]");
2099
2100        if (isCurrent) {
2101          if (!tag) {
2102            tag = document.createElement("span");
2103            tag.className = "planTag";
2104            tag.dataset.planTag = "";
2105            card.querySelector(".planTop").appendChild(tag);
2106          }
2107          tag.textContent = "Current plan";
2108          tag.dataset.tone = "current";
2109          tag.hidden = false;
2110        } else if (tag && tag.dataset.tone === "current") {
2111          if (plan === "plus") {
2112            tag.textContent = "Most popular";
2113            delete tag.dataset.tone;
2114          } else {
2115            tag.remove();
2116          }
2117        }
2118      }
2119
2120      updateCta();
2121    }
2122
2123    async function loadBillingState() {
2124      state.billingStateLoaded = false;
2125      try {
2126        const payload = await apiRequest("GET", "/v1/billing/state");
2127        state.billingState = payload;
2128        state.signedOut = false;
2129      } catch (error) {
2130        // 401 = signed out; 404 = endpoint unreachable (e.g. static preview).
2131        // Treat both as "signed out" and render pricing for a logged-out visitor.
2132        // Any other error is a load failure, NOT proof of being signed out — we
2133        // must not send an authenticated buyer to sign-in because of it.
2134        if (error.status === 401 || error.status === 404) {
2135          state.billingState = null;
2136          state.signedOut = true;
2137          return;
2138        }
2139        throw error;
2140      } finally {
2141        state.billingStateLoaded = true;
2142      }
2143    }
2144
2145    async function pollForProcessing() {
2146      if (state.processingPoll) {
2147        window.clearInterval(state.processingPoll);
2148        state.processingPoll = null;
2149      }
2150
2151      showStatus("info", "Activating workspace", "Waiting for Lemon Squeezy to confirm the subscription and sync the workspace.");
2152
2153      let attempts = 0;
2154      state.processingPoll = window.setInterval(async () => {
2155        attempts += 1;
2156        try {
2157          await loadBillingState();
2158          renderPricingUi();
2159          const status = state.billingState?.workspace?.subscriptionStatus;
2160          if (status === "trialing" || status === "active") {
2161            window.clearInterval(state.processingPoll);
2162            state.processingPoll = null;
2163            showStatus("good", "Plan active", "Your workspace is ready. Redirecting to the dashboard.");
2164            window.setTimeout(() => {
2165              window.location.href = "/dashboard";
2166            }, 900);
2167            return;
2168          }
2169        } catch (error) {
2170          showStatus("warn", "Billing sync delayed", error.message || "Refresh in a moment if this keeps happening.");
2171        }
2172
2173        if (attempts >= 20) {
2174          window.clearInterval(state.processingPoll);
2175          state.processingPoll = null;
2176          showStatus("warn", "Still syncing", "Checkout completed, but the billing webhook has not updated the workspace yet.");
2177        }
2178      }, 3000);
2179    }
2180
2181    async function maybeAutoStartFromQuery() {
2182      const plan = searchParams.get("plan");
2183      const interval = searchParams.get("interval");
2184      const processing = searchParams.get("billing") === "processing";
2185
2186      if (interval === "yearly") {
2187        applyBillingMode("yearly");
2188      }
2189
2190      if (plan) {
2191        selectPlan(plan);
2192      }
2193
2194      if (processing) {
2195        await pollForProcessing();
2196        return;
2197      }
2198
2199      if (!plan || state.autoStarted || !state.billingState) {
2200        return;
2201      }
2202
2203      state.autoStarted = true;
2204      searchParams.delete("plan");
2205      searchParams.delete("interval");
2206      history.replaceState({}, "", searchParams.toString() ? `/pricing?${searchParams.toString()}` : "/pricing");
2207      await openBillingAction(plan);
2208    }
2209
2210monthlyBtn.addEventListener("click", () => applyBillingMode("monthly"));
2211    yearlyBtn.addEventListener("click", () => applyBillingMode("yearly"));
2212
2213    for (const card of planCards) {
2214      card.addEventListener("click", () => selectPlan(card.dataset.planCard));
2215      card.addEventListener("keydown", (event) => {
2216        if (event.key === "Enter" || event.key === " ") {
2217          event.preventDefault();
2218          selectPlan(card.dataset.planCard);
2219        }
2220      });
2221    }
2222
2223    if (planCta) {
2224      planCta.addEventListener("click", async () => {
2225        try {
2226          await openBillingAction(state.selectedPlan);
2227        } catch (error) {
2228          showStatus("warn", "Checkout unavailable", error.message || "Try again in a moment.");
2229        }
2230      });
2231    }
2232
2233    if (yearlyHint) {
2234      yearlyHint.addEventListener("click", () => applyBillingMode("yearly"));
2235    }
2236
2237    void (async () => {
2238      // Start auth/billing detection before any nonessential UI rendering. A
2239      // missing or changed shared-nav element must never prevent this request.
2240      state.billingStatePromise = loadBillingState();
2241      try {
2242        applyBillingMode("monthly");
2243        selectPlan(state.selectedPlan);
2244        await state.billingStatePromise;
2245        renderPricingUi();
2246        await maybeAutoStartFromQuery();
2247      } catch (error) {
2248        showStatus("warn", "Pricing unavailable", error.message || "Unable to load billing state.");
2249      }
2250    })();
2251  </script>
2251
2252</body>
2253</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.