PageSourceSearch

https://www.textsight.ai/pricing.html

html textsight.ai collected 2026-10-05 12:48:15 UTC 67,725 bytes, 982 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3<head>
4    <!-- Google Tag Manager -->
5    
5<script>
vendor: 343 bytes, lines 5-9
5(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
6    new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
7    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
8    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
9    })(window,document,'script','dataLayer','
9GTM-MCR8KSCV
vendor: 3 bytes, line 9
9');
9</script>
9
10    <!-- End Google Tag Manager -->
11
12    <meta name="google-site-verification" content="1ZKPKJP7mvaW-IA6W4oZXZ5eU0INHy5SKOiex1-EDnQ" />
13    <!-- Google Analytics 4 -->
vendor: 68 bytes, lines 13-14
13
14    <script async src="https://www.googletagmanager.com/gtag/js?id=
14G-83KSYBQ30L
vendor: 16 bytes, lines 14-15
14"></script>
15    
15<script>
16      
vendor: 145 bytes, lines 16-19
16window.dataLayer = window.dataLayer || [];
17      function gtag(){dataLayer.push(arguments);}
18      gtag('js', new Date());
19      gtag('config', '
19G-83KSYBQ30L
vendor: 8 bytes, lines 19-20
19');
20    
20</script>
20
21    <!-- PostHog (consent-gated, see js/analytics/posthog.js) -->
22    
22<script src="/js/analytics/posthog.js?v=20260919a"></script>
22
23<!-- ts_attribution: capture incoming attribution + forward query params to app.textsight.ai links -->
24<script>
25(function() {
26  var TRACKING_KEYS = ['utm_source','utm_medium','utm_campaign','utm_content','utm_term',
27                       'gclid','fbclid','msclkid','li_fat_id','ttclid','twclid','ref'];
28  try {
29    // 1. Capture incoming attribution into sessionStorage on first hit of any
30    //    marketing page. Never overwrite an existing capture on the same
31    //    session — first-touch wins across multi-page visits.
32    var url = new URL(window.location.href);
33    var captured = {};
34    TRACKING_KEYS.forEach(function(k) {
35      var v = url.searchParams.get(k);
36      if (v) captured[k] = v;
37    });
38    if (Object.keys(captured).length && !sessionStorage.getItem('ts_attr')) {
39      sessionStorage.setItem('ts_attr', JSON.stringify(captured));
40    }
41    // 2. On DOM ready, rewrite every <a> pointing at app.textsight.ai to
42    //    append the captured params. The app's first-touch capture (in
43    //    src/App.tsx) reads them on landing.
44    function forward() {
45      var raw = sessionStorage.getItem('ts_attr');
46      if (!raw) return;
47      var attr;
48      try { attr = JSON.parse(raw); } catch (e) { return; }
49      if (!attr || !Object.keys(attr).length) return;
50      var links = document.querySelectorAll('a[href*="app.textsight.ai"], a[href*="app.textsightai.com"]');
51      links.forEach(function(a) {
52        try {
53          var u = new URL(a.href);
54          Object.keys(attr).forEach(function(k) {
55            if (!u.searchParams.has(k)) u.searchParams.set(k, attr[k]);
56          });
57          a.href = u.toString();
58        } catch (e) { /* skip malformed hrefs */ }
59      });
60    }
61    if (document.readyState === 'loading') {
62      document.addEventListener('DOMContentLoaded', forward);
63    } else {
64      forward();
65    }
66  } catch (e) { /* never block page render */ }
67})();
68</script>
68
69
70    <meta charset="UTF-8">
71    <meta name="viewport" content="width=device-width, initial-scale=1.0">
72    <link rel="icon" type="image/svg+xml" href="/favicon.svg">
73    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32.png">
74    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16.png">
75    <link rel="apple-touch-icon" href="/apple-touch-icon.png">
76    <link rel="manifest" href="/site.webmanifest">
77    <meta name="theme-color" content="#3788d8">
78    <title>Pricing - TextSight.ai | AI Content Detection Plans</title>
79    <meta name="description" content="TextSight pricing from $7.49/mo billed annually, or $9.99/mo monthly. The free tier includes 20,000 characters a month. No card to start.">
80
81    <!-- Fonts -->
82    <link rel="preconnect" href="https://fonts.googleapis.com">
83    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
84    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap" rel="stylesheet">
85    <link href="https://api.fontshare.com/v2/css?f[]=satoshi@700,500,400&display=swap" rel="stylesheet">
86
87    <!-- Favicon -->
88    <link rel="icon" type="image/svg+xml" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><circle cx='50' cy='50' r='45' fill='%233788d8'/><circle cx='50' cy='50' r='20' fill='white'/></svg>">
89
90    <!-- CSS -->
91    <link rel="stylesheet" href="css/landing.css?v=3ce4fc64">
92    <link rel="stylesheet" href="/css/lp/landing-lp.css?v=20260909a">
93    <meta property="og:title" content="Pricing - TextSight.ai | AI Content Detection Plans">
94    <meta property="og:description" content="TextSight.ai pricing — from $7.49/mo (annual) or $9.99/mo monthly. Free tier with 20,000 characters a month. Pro adds unlimited AI detection scans, larger documents, and full reports.">
95    <meta property="og:type" content="website">
96    <meta property="og:url" content="https://www.textsight.ai/pricing.html">
97    <meta property="og:image" content="https://www.textsight.ai/og-image.png">
98    <meta name="twitter:card" content="summary_large_image">
99    <meta name="twitter:site" content="@TextsightAI">
100    <meta name="twitter:title" content="Pricing - TextSight.ai | AI Content Detection Plans">
101    <meta name="twitter:description" content="TextSight.ai pricing — from $7.49/mo (annual) or $9.99/mo monthly. Free tier with 20,000 characters a month. Pro adds unlimited AI detection scans, larger documents, and full reports.">
102    <meta name="twitter:image" content="https://www.textsight.ai/og-image.png">
103    <link rel="canonical" href="https://www.textsight.ai/pricing.html">
104
105    <!-- Pricing FAQPage schema lives at the bottom of the page (one block,
106         12 questions, matching the visible FAQ). Removed the duplicate 8-Q
107         block that used to live here to avoid Google's "multiple FAQPage
108         blocks on a single page" warning. -->
109    <!-- Meta Pixel Code -->
110    
110<script>
vendor: 435 bytes, lines 110-119
110
111    !function(f,b,e,v,n,t,s)
112    {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
113    n.callMethod.apply(n,arguments):n.queue.push(arguments)};
114    if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
115    n.queue=[];t=b.createElement(e);t.async=!0;
116    t.src=v;s=b.getElementsByTagName(e)[0];
117    s.parentNode.insertBefore(t,s)}(window, document,'script',
118    'https://connect.facebook.net/en_US/fbevents.js');
119    fbq('init', '
11926786657437662216
vendor: 38 bytes, lines 119-121
119');
120    fbq('track', 'PageView');
121    
121</script>
121
122    <noscript><img height="1" width="1" style="display:none"
123    src="https://www.facebook.com/tr?id=26786657437662216&ev=PageView&noscript=1"
124    /></noscript>
125    <!-- End Meta Pixel Code -->
126    
126<script>
127    if (typeof fbq === 'function') {
128      fbq('track', 'ViewContent', { content_name: 'Pricing Page', content_category: 'pricing' });
129    }
130    </script>
130
131    <style>
132    .price-grid-5 {
133      display: grid;
134      /* 4 columns since the Free card was removed from this grid; the
135         class name stays so the media queries below keep matching. */
136      /* 3 plans in the grid — Enterprise moved to its own banner below,
137         matching how the app's pricing page already presents it. */
138      grid-template-columns: repeat(3, 1fr);
139      gap: 14px;
140      align-items: stretch;
141    }
142    .price-grid-5 .price-card { padding: 24px 22px; }
143    /* Pro is the plan we want chosen, so it is physically larger than its
144       neighbours rather than only differently coloured — scale reads before
145       colour does. Lifted on its own row-axis so the ribbon clears the grid. */
146    .price-grid-5 .price-card.featured {
147      transform: scale(1.045);
148      z-index: 2;
149      box-shadow: 0 18px 44px rgba(48,118,196,.20);
150      border-width: 2px;
151    }
152    .price-grid-5 .price-card.featured .amt { font-size: 42px; }
153    @media (max-width: 940px) {
154      .price-grid-5 .price-card.featured { transform: none; }
155    }
156    .price-grid-5 .price-card .amt { font-size: 36px; }
157    /* Enterprise band — dark, full width, two columns. Deliberately unlike the
158       cards: it is a different kind of purchase (sales-led, not self-serve). */
159    .ent-band {
160      display: grid; grid-template-columns: minmax(260px, 340px) 1fr; gap: 28px;
161      background: #1C2833; border-radius: 18px; padding: 30px 32px; color: #fff;
162    }
163    .ent-band h3 { font-size: 26px; font-weight: 800; margin: 0 0 4px; }
164    .ent-sub { color: #94a3b8; font-size: 14px; margin: 0 0 14px; }
165    .ent-price { display: flex; align-items: baseline; gap: 6px; }
166    .ent-price .amt { font-size: 38px; font-weight: 800; line-height: 1; }
167    .ent-per { color: #94a3b8; font-size: 15px; }
168    .ent-billed { color: #94a3b8 !important; font-size: 12.5px; margin: 6px 0 16px; }
169    .ent-cta {
170      display: inline-block; background: #fff; color: #1C2833; font-weight: 700;
171      padding: 12px 22px; border-radius: 10px; text-decoration: none;
172    }
173    .ent-cta:hover { background: #e2e8f0; }
174    .ent-note { color: #64748b; font-size: 12px; margin: 9px 0 0; }
175    .ent-feats {
176      list-style: none; margin: 0; padding: 0; align-self: center;
177      display: grid; grid-template-columns: 1fr 1fr; gap: 9px 22px;
178    }
179    .ent-feats li { position: relative; padding-left: 21px; font-size: 13.5px; color: #cbd5e1; }
180    .ent-feats li b { color: #fff; }
181    .ent-feats li:before {
182      content: ""; position: absolute; left: 2px; top: 6px; width: 10px; height: 5px;
183      border-left: 2px solid #4a99e6; border-bottom: 2px solid #4a99e6; transform: rotate(-45deg);
184    }
185    @media (max-width: 860px) {
186      .ent-band { grid-template-columns: 1fr; gap: 20px; padding: 24px 22px; }
187      .ent-feats { grid-template-columns: 1fr; }
188    }
189    .price-card .billed {
190      font-size: 12px;
191      color: var(--muted);
192      margin: 6px 0 14px;
193      min-height: 16px;
194      padding-bottom: 14px;
195      border-bottom: 1px solid var(--border);
196    }
197    .price-card .feature-label {
198      list-style: none;
199      font-size: 10.5px;
200      font-weight: 800;
201      letter-spacing: .12em;
202      color: var(--muted);
203      text-transform: uppercase;
204      margin-top: 10px;
205      padding: 0;
206    }
207    .price-card .feature-label:first-child { margin-top: 0; }
208    .price-card ul li.feature-label::before,
209    .price-card ul li.feature-label svg { display: none; }
210    .price-card li.cross { color: var(--muted); }
211    .price-card li.cross svg { color: var(--muted-2); opacity: .7; }
212    .price-card .pnote {
213      font-size: 12px;
214      color: var(--muted);
215      margin: 10px 0 0;
216      text-align: center;
217    }
218    .toggle-row {
219      display: inline-flex; align-items: center; gap: 12px;
220      margin: 0 auto;
221      background: var(--surface-2);
222      border-radius: 11px;
223      padding: 4px;
224    }
225    .toggle-row button {
226      border: 0;
227      background: transparent;
228      padding: 8px 16px;
229      border-radius: 8px;
230      font-size: 13.5px;
231      font-weight: 700;
232      color: var(--muted);
233      cursor: pointer;
234      transition: all .15s ease;
235      display: inline-flex; align-items: center; gap: 6px;
236    }
237    .toggle-row button.active {
238      background: #fff;
239      color: var(--ink);
240      box-shadow: 0 1px 3px rgba(15,23,42,.08);
241    }
242    .toggle-row .save {
243      font-size: 10.5px; font-weight: 800;
244      padding: 2px 6px;
245      border-radius: 4px;
246      background: var(--green-soft);
247      color: var(--green);
248      letter-spacing: .04em;
249    }
250    .feat-table {
251      background: #fff;
252      border: 1px solid var(--border);
253      border-radius: 18px;
254      overflow: hidden;
255    }
256    .feat-table table {
257      width: 100%;
258      border-collapse: collapse;
259      font-size: 13.5px;
260    }
261    .feat-table thead th {
262      text-align: center;
263      padding: 18px 14px;
264      font-weight: 800;
265      font-size: 14px;
266      color: var(--ink);
267      background: var(--surface-2);
268      border-bottom: 1px solid var(--border);
269      vertical-align: middle;
270    }
271    .feat-table thead th:first-child { text-align: left; }
272    .feat-table thead th .ppl {
273      display: block;
274      font-size: 11.5px;
275      color: var(--muted);
276      font-weight: 600;
277      margin-top: 2px;
278    }
279    .feat-table thead th.featured {
280      background: linear-gradient(180deg, var(--brand-softer), #fff);
281      position: relative;
282    }
283    .feat-table thead th.featured::before {
284      content: "POPULAR";
285      position: absolute;
286      top: 4px; left: 50%;
287      transform: translateX(-50%);
288      font-size: 9.5px;
289      font-weight: 800;
290      letter-spacing: .08em;
291      padding: 2px 6px;
292      border-radius: 4px;
293      background: var(--brand);
294      color: #fff;
295    }
296    .feat-table tbody td {
297      padding: 13px 14px;
298      border-bottom: 1px solid var(--border);
299      text-align: center;
300      color: var(--ink-2);
301      vertical-align: middle;
302    }
303    .feat-table tbody td:first-child {
304      text-align: left;
305      font-weight: 700;
306      color: var(--ink);
307      background: var(--surface-2);
308    }
309    .feat-table tbody td.featured { background: rgba(238,245,252,.4); color: var(--ink); font-weight: 700; }
310    .feat-table tbody tr:last-child td { border-bottom: 0; }
311    .feat-table tbody .section-row td {
312      background: #f7f9fd;
313      font-weight: 800;
314      font-size: 11px;
315      letter-spacing: .14em;
316      color: var(--muted);
317      text-transform: uppercase;
318      text-align: left;
319      padding: 14px;
320    }
321    .yes-mark { color: var(--green); font-weight: 800; }
322    .no-mark { color: var(--muted-2); }
323
324    @media (max-width: 1240px) {
325      /* Was `1fr 1fr`, which made sense for five cards. With three, a 2-up step
326         leaves Business orphaned on its own row — so hold three across and go
327         straight to stacked below. */
328      .price-grid-5 { grid-template-columns: repeat(3, 1fr); gap: 10px; }
329    }
330    @media (max-width: 940px) {
331      .price-grid-5 { grid-template-columns: 1fr; }
332      .feat-table { overflow-x: auto; }
333      .feat-table table { min-width: 760px; }
334    }
335    </style>
336    <!-- Tolt affiliate tracking. Reads ?via=CODE and sets the 60-day cookie on
337         .textsight.ai, so the referral survives the hop to app.textsight.ai.
338         Generic: one tag serves every affiliate, no per-partner setup. -->
339    
339<script async src="https://files.tlt-cdn.com/tlt.js" data-tolt="pk_9aGC2sC26NiuiNPBE3MQAftu"></script>
339
340</head>
341<body data-page="pricing" data-screen-label="Pricing">
342
343<div id="ts-nav-mount"></div>
344
345<section class="lf-hero" data-screen-label="Hero">
346  <span class="crumbs"><a href="/">Home</a> › Pricing</span>
347  <h1>Simple, <span class="italic">honest</span> pricing.</h1>
348  <p class="lead">Start free, then fair monthly pricing when you need more. No setup fees, no cancellation fees, no surprise renewals.</p>
349  <div class="meta">
350    <span>💳 No card to start</span>
351    <span class="dot"></span>
352    <span>↻ Cancel in one click</span>
353    <span class="dot"></span>
354    <span>💳 No setup or cancel fees</span>
355  </div>
356</section>
357
358<!-- ============ BILLING TOGGLE + RISK-REVERSAL STRIP ============ -->
359<section style="padding: 36px 32px 0; text-align: center;">
360  <div class="toggle-row">
361    <button data-billing="monthly">Monthly</button>
362    <button class="active" data-billing="yearly">Yearly <span class="save">SAVE 25%</span></button>
363  </div>
364  <div style="display:flex;flex-wrap:wrap;justify-content:center;gap:14px 24px;max-width:880px;margin:24px auto 0;padding:14px 22px;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;font-size:13px;color:var(--muted);">
365    <span style="display:inline-flex;align-items:center;gap:6px;"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" style="color:var(--brand);"><path d="M5 12l4 4 10-10"/></svg>No credit card for free tier</span>
366    <span style="display:inline-flex;align-items:center;gap:6px;"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" style="color:var(--brand);"><path d="M5 12l4 4 10-10"/></svg>Cancel anytime — no retention call</span>
367    <span style="display:inline-flex;align-items:center;gap:6px;"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" style="color:var(--brand);"><path d="M5 12l4 4 10-10"/></svg>No long-term contracts</span>
368    <span style="display:inline-flex;align-items:center;gap:6px;"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" style="color:var(--brand);"><path d="M5 12l4 4 10-10"/></svg>Secure checkout via Stripe</span>
369  </div>
370</section>
371
372<!-- ============ PRICING CARDS (live content — DETECTION / HUMANIZER / FEATURES sections) ============ -->
373<section class="section" style="padding-top: 36px;" data-screen-label="Plans">
374  <div class="sec-wrap">
375    <div class="price-grid-5">
376
377      <!-- Starter -->
378      <div class="price-card">
379        <div class="pname">Starter</div>
380        <div class="pp"><span class="amt" data-monthly="$9.99" data-yearly="$7.49">$7.49</span><span class="per">/month</span></div>
381        <div class="pdesc">For light users &amp; students</div>
382        <p class="billed" data-monthly="" data-yearly="Billed $89.88/year — Save $30">Billed $89.88/year — Save $30</p>
383        <ul>
384          <li class="feature-label">DETECTION</li>
385          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>20 scans / day</b></li>
386          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> 10,000 chars per scan</li>
387          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> % + sentence-level detail</li>
388          <li class="feature-label">HUMANIZER</li>
389          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>20,000</b> words / month</li>
390          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Before / After score</li>
391          <li class="feature-label">FEATURES</li>
392          <li class="cross"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M6 6l12 12M6 18L18 6"/></svg> No file upload</li>
393          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Unlimited scan history</li>
394          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Email support</li>
395        </ul>
396        <a class="pcta" href="https://app.textsight.ai/signup">Get Starter</a>
397        <p class="pnote">Cancel anytime in Settings</p>
398      </div>
399
400      <!-- Pro -->
401      <div class="price-card featured">
402        <span class="ribbon">MOST POPULAR</span>
403        <div class="pname">Pro</div>
404        <div class="pp"><span class="amt" data-monthly="$19.99" data-yearly="$14.99">$14.99</span><span class="per">/month</span></div>
405        <div class="pdesc">For creators &amp; freelancers</div>
406        <p class="billed" data-monthly="" data-yearly="Billed $179.88/year — Save $60">Billed $179.88/year — Save $60</p>
407        <ul>
408          <li class="feature-label">DETECTION</li>
409          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>Unlimited</b> scans</li>
410          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> 25,000 chars per scan</li>
411          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Full detection report</li>
412          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Detector badges (full scores)</li>
413          <li class="feature-label">HUMANIZER</li>
414          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>50,000</b> words / month</li>
415          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Advanced Humanize</li>
416          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> All 3 tone settings</li>
417          <li class="feature-label">FEATURES</li>
418          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> File upload (.docx, .pdf)</li>
419          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>API access</b> (5K calls/mo)</li>
420          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Unlimited scan history</li>
421          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Priority email support</li>
422        </ul>
423        <a class="pcta" href="https://app.textsight.ai/signup">Get Pro</a>
424        <p class="pnote">Cancel anytime in Settings</p>
425      </div>
426
427      <!-- Business -->
428      <div class="price-card">
429        <div class="pname">Business</div>
430        <div class="pp"><span class="amt" data-monthly="$39.99" data-yearly="$29.99">$29.99</span><span class="per">/month</span></div>
431        <div class="pdesc">For power users &amp; teams</div>
432        <p class="billed" data-monthly="" data-yearly="Billed $359.88/year — Save $120">Billed $359.88/year — Save $120</p>
433        <ul>
434          <li class="feature-label">DETECTION</li>
435          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>Unlimited</b> scans</li>
436          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> 50,000 chars per scan</li>
437          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Full detection report</li>
438          <li class="feature-label">HUMANIZER</li>
439          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>100,000</b> words / month</li>
440          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Advanced Humanize + custom</li>
441          <li class="feature-label">FEATURES</li>
442          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> File upload (.docx, .pdf)</li>
443          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>API access</b> (10K calls/mo)</li>
444          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> <b>5 team seats</b></li>
445          <li><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg> Priority + chat support</li>
446        </ul>
447        <a class="pcta" href="https://app.textsight.ai/signup">Get Business</a>
448        <p class="pnote">Cancel anytime in Settings</p>
449      </div>
450
451    </div>
452  </div>
453</section>
454
455<!-- ============ ENTERPRISE — full-width banner, not a grid card ============ -->
456<section class="section" style="padding-top:0;" data-screen-label="Enterprise">
457  <div class="sec-wrap">
458    <div class="ent-band">
459      <div class="ent-left">
460        <h3>Enterprise</h3>
461        <p class="ent-sub">For teams &amp; institutions that need scale</p>
462        <div class="ent-price">
463          <span class="amt" data-monthly="$79.99" data-yearly="$59.99">$59.99</span><span class="ent-per">/month</span>
464        </div>
465        <p class="ent-billed billed" data-monthly="" data-yearly="Billed $719.88/year — Save $240">Billed $719.88/year — Save $240</p>
466        <a class="ent-cta" href="contact.html">Talk to sales</a>
467        <p class="ent-note">Custom terms available</p>
468      </div>
469      <ul class="ent-feats">
470        <li><b>Unlimited</b> scans + characters</li>
471        <li><b>150,000</b> humanizer words / month</li>
472        <li><b>50,000</b> API calls / month</li>
473        <li><b>10 team seats</b> (+$8/seat)</li>
474        <li>File upload + bulk scanning</li>
475        <li>Full report + export, badges via API</li>
476        <li>Unlimited scan history</li>
477        <li>Dedicated support</li>
478      </ul>
479    </div>
480  </div>
481</section>
482
483<!-- ============ FULL FEATURE COMPARE ============ -->
484<section class="section alt" data-screen-label="Feature compare">
485  <div class="sec-wrap">
486    <div class="sec-head">
487      <span class="sec-eyebrow">Compare plans</span>
488      <h2 class="sec-title">Every feature, <span class="italic">every</span> plan.</h2>
489    </div>
490
491    <div class="feat-table">
492      <table>
493        <thead>
494          <tr>
495            <th></th>
496            <th>Free<span class="ppl">$0</span></th>
497            <th>Starter<span class="ppl">$9.99/mo</span></th>
498            <th class="featured">Pro<span class="ppl">$19.99/mo</span></th>
499            <th>Business<span class="ppl">$39.99/mo</span></th>
500            <th>Enterprise<span class="ppl">$79.99/mo</span></th>
501          </tr>
502        </thead>
503        <tbody>
504          <tr class="section-row"><td colspan="6">Detection</td></tr>
505          <tr><td>Scans per day</td><td>No daily cap (20,000 chars/mo)</td><td>20</td><td class="featured">Unlimited</td><td>Unlimited</td><td>Unlimited</td></tr>
506          <tr><td>Characters per scan</td><td>5,000</td><td>10,000</td><td class="featured">25,000</td><td>50,000</td><td>Unlimited</td></tr>
507          <tr><td>Humanization Score (0–100)</td><td>✓</td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
508          <tr><td>Sentence-level highlighting</td><td>✓</td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
509          <tr><td>Rewrite Suggestions</td><td><span class="no-mark">—</span></td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
510          <tr><td>Model attribution</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
511          <tr><td>Forensic PDF export</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
512
513          <tr class="section-row"><td colspan="6">Humanizer</td></tr>
514          <tr><td>AI Humanizer words / month</td><td>2,000</td><td>20,000</td><td class="featured">50,000</td><td>100,000</td><td>150,000</td></tr>
515          <tr><td>Tone presets</td><td><span class="no-mark">—</span></td><td>3</td><td class="featured">5</td><td>5 + custom</td><td>Unlimited custom</td></tr>
516          <tr><td>Citation lock</td><td><span class="no-mark">—</span></td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
517
518          <tr class="section-row"><td colspan="6">Tools &amp; Workspace</td></tr>
519          <tr><td>20 free writing tools</td><td>✓</td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
520          <tr><td>Bulk scanner</td><td><span class="no-mark">—</span></td><td>10 docs</td><td class="featured">100 docs</td><td>500 docs</td><td>10,000 docs</td></tr>
521          <tr><td>Folders &amp; saved history</td><td><span class="no-mark">—</span></td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
522          <tr><td>Chrome / Word / Docs add-ons</td><td>✓</td><td>✓</td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
523
524          <tr class="section-row"><td colspan="6">Team</td></tr>
525          <tr><td>Team seats</td><td>1</td><td>1</td><td class="featured">1</td><td>5</td><td>10</td></tr>
526          <tr><td>Shared workspaces</td><td>
526<span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured"><span class="no-mark">—</span></td><td>✓</td><td>✓</td></tr>
527          <tr><td>SSO (SAML, Okta)</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured"><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td>✓</td></tr>
528          <tr><td>Audit logs</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured"><span class="no-mark">—</span></td><td>✓</td><td>✓</td></tr>
529
530          <tr class="section-row"><td colspan="6">API &amp; integrations</td></tr>
531          <tr><td>REST API calls / month</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured">5,000</td><td>10,000</td><td>50,000</td></tr>
532          <tr><td>API requests / minute</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured">60</td><td>120</td><td>240</td></tr>
533          <tr><td>Webhooks</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured">✓</td><td>✓</td><td>✓</td></tr>
534
535          <tr class="section-row"><td colspan="6">Support</td></tr>
536          <tr><td>Support channel</td><td>Community</td><td>Email</td><td class="featured">Priority email</td><td>Priority + Slack</td><td>Dedicated CSM</td></tr>
537          <tr><td>Response SLA</td><td>—</td><td>24 h</td><td class="featured">4 h</td><td>2 h</td><td>30 min</td></tr>
538          <tr><td>Custom retention policy</td><td><span class="no-mark">—</span></td><td><span class="no-mark">—</span></td><td class="featured"><span class="no-mark">—</span></td><td>✓</td><td>✓</td></tr>
539        </tbody>
540      </table>
541    </div>
542  </div>
543</section>
544
545<!-- ============ Developer API band ============
546     API access is part of the plan, not a separate SKU. The quotas and the
547     per-minute ceilings are the two numbers developers evaluate us on, so
548     they belong on the pricing page and not only in the docs. -->
549<section class="section" data-screen-label="Developer API">
550  <div class="sec-wrap">
551    <div class="sec-head">
552      <span class="sec-eyebrow">For developers</span>
553      <h2 class="sec-title">The API is part of the plan, <span class="italic">not a separate bill.</span></h2>
554      <p class="sec-sub">Every paid plan from Pro up includes REST access to the same detection engine the app runs on. Two limits apply together, and both are counted per account rather than per key: a monthly call quota and a per-minute rate limit. Calls are metered only on a 2xx, so rejected requests cost you nothing.</p>
555    </div>
556    <div style="max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;">
557      <div style="border:1px solid #e6e8ec;border-radius:14px;padding:20px 22px;background:#fff;">
558        <div style="font-size:13px;font-weight:700;color:#637085;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:8px;">Pro</div>
559        <div style="font-size:24px;font-weight:900;color:#0d1220;">5,000 <span style="font-size:14px;font-weight:600;color:#637085;">calls / mo</span></div>
560        <div style="font-size:14px;color:#637085;margin-top:4px;">60 requests / minute</div>
561      </div>
562      <div style="border:2px solid #3788d8;border-radius:14px;padding:20px 22px;background:#fff;">
563        <div style="font-size:13px;font-weight:700;color:#3788d8;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:8px;">Business</div>
564        <div style="font-size:24px;font-weight:900;color:#0d1220;">10,000 <span style="font-size:14px;font-weight:600;color:#637085;">calls / mo</span></div>
565        <div style="font-size:14px;color:#637085;margin-top:4px;">120 requests / minute</div>
566      </div>
567      <div style="border:1px solid #e6e8ec;border-radius:14px;padding:20px 22px;background:#fff;">
568        <div style="font-size:13px;font-weight:700;color:#637085;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:8px;">Enterprise</div>
569        <div style="font-size:24px;font-weight:900;color:#0d1220;">50,000 <span style="font-size:14px;font-weight:600;color:#637085;">calls / mo</span></div>
570        <div style="font-size:14px;color:#637085;margin-top:4px;">240 requests / minute</div>
571      </div>
572    </div>
573    <p style="text-align:center;margin-top:24px;color:#637085;font-size:14px;">Three endpoints: <code>/v2/detect</code>, <code>/v2/score</code>, <code>/v2/rewrite</code>. English text. Free and Starter cannot create API keys. <a href="/ai-detection-api/" style="color:#3788d8;font-weight:700;text-decoration:none;">See the API in detail &rarr;</a> or <a href="/api-docs.html" style="color:#3788d8;font-weight:700;text-decoration:none;">read the reference</a>.</p>
574  </div>
575</section>
576
577<!-- ============ What you get on every tier — 6 detailed cards ============
578     Ported from old pricing.html so the new design preserves the
579     "Free is the full product, just a daily quota" trust pitch that
580     drove conversion on the previous page. -->
581<section class="section alt" data-screen-label="Included on every tier">
582  <div class="sec-wrap">
583    <div class="sec-head">
584      <span class="sec-eyebrow">Included on every plan</span>
585      <h2 class="sec-title">What you get <span class="italic">on every</span> TextSight tier.</h2>
586      <p class="sec-sub">The Free plan is the full product on a monthly quota, not a stripped feature set. Six core capabilities ship on every paid tier and on the free tier too. Higher tiers unlock more volume, faster turnaround, and team or API access — but the underlying engine is identical.</p>
587    </div>
588    <div class="every-tier-grid" style="display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:32px;">
589      <div style="background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:24px;">
590        <div style="display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(55,136,216,0.12);font-size:22px;margin-bottom:14px;">🛡️</div>
591        <h3 style="font-size:18px;font-weight:800;margin-bottom:8px;">AI detection on every tier</h3>
592        <p style="color:var(--muted, #475569);font-size:14px;line-height:1.6;">The same multi-model detector runs on Free, Starter, Pro, Business, and Enterprise. Trained on GPT, Claude, Gemini, Llama, and Mistral outputs, so a $0 user sees the exact accuracy a $79.99 user sees. The tiers gate quota and history, not detection quality.</p>
593      </div>
594      <div style="background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:24px;">
595        <div style="display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(55,136,216,0.12);font-size:22px;margin-bottom:14px;">✨</div>
596        <h3 style="font-size:18px;font-weight:800;margin-bottom:8px;">Humanizer on every tier</h3>
597        <p style="color:var(--muted, #475569);font-size:14px;line-height:1.6;">Every plan ships the rewrite engine. Free includes 2,000 humanizer words a month in Light and Balanced modes. Starter adds 20,000 words per month. Pro unlocks all three intensity modes plus 50,000 monthly words. Business goes to 100,000, Enterprise to 150,000.</p>
598      </div>
599      <div style="background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:24px;">
600        <div style="display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(55,136,216,0.12);font-size:22px;margin-bottom:14px;">🎯</div>
601        <h3 style="font-size:18px;font-weight:800;margin-bottom:8px;">Sentence-level highlights on every tier</h3>
602        <p style="color:var(--muted, #475569);font-size:14px;line-height:1.6;">Every scan returns a single overall score plus colour-coded sentences so you can see which lines triggered. Pro and above expand this into a full per-sentence report with confidence bands. Free and Starter still show the same highlights inline so you know exactly where to rewrite.</p>
603      </div>
604      <div style="background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:24px;">
605        <div style="display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(55,136,216,0.12);font-size:22px;margin-bottom:14px;">🧩</div>
606        <h3 style="font-size:18px;font-weight:800;margin-bottom:8px;">Chrome extension on every tier</h3>
607        <p style="color:var(--muted, #475569);font-size:14px;line-height:1.6;">Right-click any selected text on any website to scan inline. Works on Gmail, Google Docs, Notion, X drafts, LMS portals, and any content management system in the browser. Available on all five plans, sharing your account quota.</p>
608      </div>
609      <div style="background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:24px;">
610        <div style="display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(55,136,216,0.12);font-size:22px;margin-bottom:14px;">🔒</div>
611        <h3 style="font-size:18px;font-weight:800;margin-bottom:8px;">Security and privacy on every tier</h3>
612        <p style="color:var(--muted, #475569);font-size:14px;line-height:1.6;">All traffic is TLS encrypted. Submitted text is never shared or sold, and never used to train our models. Detection results are stored in your account history for the retention window of your plan and can be deleted at any time. Stripe handles billing data, so card numbers never touch our servers.</p>
613      </div>
614      <div style="background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:24px;">
615        <div style="display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(55,136,216,0.12);font-size:22px;margin-bottom:14px;">📊</div>
616        <h3 style="font-size:18px;font-weight:800;margin-bottom:8px;">Dashboard access on every tier</h3>
617        <p style="color:var(--muted, #475569);font-size:14px;line-height:1.6;">Every plan, free included, gets the full dashboard at app.textsight.ai. You can see remaining quota, scan history within your retention window, downloadable PDF reports, saved humanizer drafts, and usage analytics. No feature is hidden behind a paywall inside the dashboard itself.</p>
618      </div>
619    </div>
620  </div>
621</section>
622
623<!-- ============ FAQ — expanded with long-form answers ported from old design ============ -->
624<section class="section" data-screen-label="Pricing FAQ">
625  <div class="sec-wrap">
626    <div class="sec-head">
627      <span class="sec-eyebrow">Pricing FAQ</span>
628      <h2 class="sec-title">Frequently asked about <span class="italic">TextSight</span> pricing.</h2>
629      <p class="sec-sub">Twelve questions buyers ask before picking a tier. If your question is not here, the <a href="contact.html">contact page</a> replies on the same business day.</p>
630    </div>
631    <div class="faq-list">
632      <details class="faq" open>
633        <summary>Is there a free plan?</summary>
634        <div class="a">Yes — the free tier gives you 20,000 characters a month (5,000 per scan) plus 2,000 AI Humanizer words a month, with the full feature set (same detector, same Humanization Score, same sentence-level highlights, same one-click AI humanizer in Light and Balanced modes). No credit card required. Higher daily limits start at $9.99/mo on the Starter plan.</div>
635      </details>
636      <details class="faq">
637        <summary>What is the difference between Starter and Pro?</summary>
638        <div class="a">Starter at $9.99 per month is built for light, predictable workloads: 20 scans per day, 10,000 characters per scan, 20,000 AI humanizer words per month, and 14 days of scan history. Pro at $19.99 per month removes the daily scan cap (you get unlimited scans), raises per-scan capacity to 25,000 characters, expands AI humanizer output to 50,000 words a month, adds file upload (.docx, .pdf), ships 5,000 API calls a month, and keeps history for 30 days. The simple rule: if you run 3 or fewer scans most days and never bulk-process anything, Starter is enough. If you scan daily, work with files, or need API access for an in-house tool or automation, jump straight to Pro.</div>
639      </details>
640      <details class="faq">
641        <summary>What's the difference between Business and Enterprise?</summary>
642        <div class="a">Business at $39.99/mo adds 5 team seats, shared 100K humanizer words/month, 10K API calls/month, bulk scan up to 500 docs, and 90-day scan history. Enterprise at $79.99/mo extends to 10 seats (more available at $8/seat/month), unlimited retention, SSO (SAML/Okta), audit logs, custom retention policy, dedicated CSM with 30-minute response SLA, and a DPA for compliance workflows. Most teams of 2-5 start on Business; teams that need SSO, audit, or custom retention go straight to Enterprise.</div>
643      </details>
644      <details class="faq">
645        <summary>Can I switch plans anytime?</summary>
646        <div class="a">Absolutely. Upgrade or downgrade applies immediately from Settings → Billing in the dashboard. On upgrade, Stripe prorates the difference and charges only the remaining days at the higher rate, then resumes normal billing on your renewal date. On downgrade, the new tier takes effect at the next renewal so you don't lose paid-for capacity. No minimum commitment on any monthly tier. Annual plans also support mid-year upgrades with pro-rated billing. There's no fee, no retention call, and no required reason field.</div>
647      </details>
648      <details class="faq">
649        <summary>What counts as a scan?</summary>
650        <div class="a">One scan is one detection run on one body of text, up to your plan's character limit. Pasting 5,000 characters and clicking Detect is one scan. Uploading a 12,000-character .docx on Pro is still one scan because the file fits inside the 25,000-character per-scan cap. Re-running detection on the same text after editing counts as a new scan. Humanizer runs are tracked separately and consume your monthly humanizer word budget, not your scan count. Chrome extension and API calls both deduct from the same scan and humanizer quotas as the dashboard.</div>
651      </details>
652      <details class="faq">
653        <summary>Annual vs monthly billing — which should I pick?</summary>
654        <div class="a">Annual saves 25 percent across every tier. On Pro that's $14.99 effective per month instead of $19.99, or $60 saved across the year. On Business, $29.99 instead of $39.99, or $120 saved. Pick annual if you already know you'll use the product for more than 6 months, since 25 percent off pays for itself in three quarters. Pick monthly if you're still validating fit, since you keep full flexibility to cancel anytime and stop future renewals. You can also switch from monthly to annual mid-cycle and we credit the unused monthly portion against the annual invoice.</div>
655      </details>
656      <details class="faq">
657        <summary>What is the refund policy?</summary>
658        <div class="a">
658Payments are final and non-refundable. You can cancel anytime from Settings → Billing — cancellation stops future renewals and you keep access until the end of your current billing period. We don't refund partial periods or unused time, and this doesn't affect any statutory rights you may have under applicable law. Since there's a free tier with no card required, we recommend trying TextSight before you upgrade. Enterprise customers on invoice billing follow the terms written into their order form.</div>
659      </details>
660      <details class="faq">
661        <summary>What happens when I exceed my plan limits?</summary>
662        <div class="a">Daily scan caps and monthly humanizer word caps return a soft rate-limit message inside the dashboard, the Chrome extension, and the API. No surprise charge ever fires. Daily scan caps reset at the UTC day boundary (00:00 UTC). Monthly humanizer budgets reset on the first day of each calendar month at 00:00 UTC. If you hit a cap mid-project, you can upgrade in two clicks and the higher limits apply immediately, with no proration delay. The unused portion of your current month is credited against the upgraded plan automatically.</div>
663      </details>
664      <details class="faq">
665        <summary>What happens to my scan history if I downgrade?</summary>
666        <div class="a">You keep all your historical scans — we don't delete data on a downgrade. The new plan's retention window applies to NEW scans going forward (30 days on Starter/Pro, 90 days on Business, unlimited on Enterprise). Existing older scans retain their original retention window for up to 30 days from the downgrade date, giving you time to export anything you want to keep.</div>
667      </details>
668      <details class="faq">
669        <summary>How do team seats work on Business?</summary>
670        <div class="a">Business at $39.99/mo includes 5 team seats with a shared 100,000 humanizer words per month, shared 10,000 API calls per month, and a shared 90-day scan history. The owner invites seats by email from Settings → Team. Each invited user gets their own login, their own dashboard view, and their own personal usage analytics — but quota is pooled at the team level. Removing a seat frees the slot for a new invite within seconds. Enterprise extends this to 10 seats with the option to add more at $8 per seat per month.</div>
671      </details>
672      <details class="faq">
673        <summary>What payment methods do you accept?</summary>
674        <div class="a">All major credit and debit cards (Visa, Mastercard, American Express, Discover) plus Apple Pay, Google Pay, and SEPA in supported regions — all processed through Stripe with 256-bit SSL encryption. Card numbers never touch our servers. Enterprise customers can pay by invoice with NET-30 terms after the first paid month. UPI support is on the roadmap for our India customers.</div>
675      </details>
676    </div>
677  </div>
678</section>
679
680<!-- ============ Pricing FAQPage JSON-LD (ported from old design for SERP rich results) ============ -->
681<script type="application/ld+json">
682{
683  "@context": "https://schema.org",
684  "@type": "FAQPage",
685  "mainEntity": [
686    {"@type": "Question", "name": "Is there a free plan?", "acceptedAnswer": {"@type": "Answer", "text": "Yes — the free tier gives you 20,000 characters a month (5,000 per scan) plus 2,000 AI Humanizer words a month, with the full feature set. No credit card required. Higher daily limits start at $9.99/mo on the Starter plan."}},
687    {"@type": "Question", "name": "What is the difference between Starter and Pro?", "acceptedAnswer": {"@type": "Answer", "text": "Starter at $9.99/month is for light, predictable workloads: 20 scans/day, 10,000 chars/scan, 20,000 AI humanizer words/month, 14 days of history. Pro at $19.99/month removes the daily scan cap, raises per-scan capacity to 25,000 chars, expands AI humanizer to 50,000 words/month, adds file upload, ships 5,000 API calls/month, keeps history 30 days."}},
688    {"@type": "Question", "name": "What's the difference between Business and Enterprise?", "acceptedAnswer": {"@type": "Answer", "text": "Business at $39.99/mo: 5 seats, 100K humanizer words shared, 10K API calls, bulk scan 500 docs, 90-day history. Enterprise at $79.99/mo: 10 seats (more at $8/seat), unlimited retention, SSO, audit logs, custom retention policy, dedicated CSM with 30-min SLA, DPA."}},
689    {"@type": "Question", "name": "Can I switch plans anytime?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Upgrade or downgrade applies immediately from Settings → Billing. On upgrade, Stripe prorates the difference. On downgrade, the new tier takes effect at the next renewal. No minimum commitment, no fee, no retention call."}},
690    {"@type": "Question", "name": "What counts as a scan?", "acceptedAnswer": {"@type": "Answer", "text": "One scan is one detection run on one body of text, up to the plan's per-scan character limit. Re-running detection after editing counts as a new scan. Humanizer runs are tracked separately and consume the monthly humanizer word budget. Chrome extension and API calls deduct from the same quotas as the dashboard."}},
691    {"@type": "Question", "name": "Annual vs monthly billing", "acceptedAnswer": {"@type": "Answer", "text": "Annual saves 25 percent on every tier. Pro becomes $14.99 effective per month instead of $19.99 ($60/year saved). Business becomes $29.99 instead of $39.99 ($120/year saved). Pick annual if you'll use the product more than 6 months. Switching from monthly to annual mid-cycle credits the unused monthly portion against the annual invoice."}},
692    {"@type": "Question", "name": "What is the refund policy?", "acceptedAnswer": {"@type": "Answer", "text": "Payments are final and n
692on-refundable. Cancel anytime from Settings to stop future renewals; you keep access until the end of your current billing period. We do not refund partial periods or unused time, and this does not affect statutory rights under applicable law. A free tier with no card is available to try first. Enterprise: terms per order form."}},
693    {"@type": "Question", "name": "What happens when I exceed my plan limits?", "acceptedAnswer": {"@type": "Answer", "text": "Daily scan caps and monthly humanizer word caps return a soft rate-limit message. No surprise charge ever fires. Daily caps reset at 00:00 UTC. Monthly humanizer budgets reset on the first of each calendar month at 00:00 UTC. Upgrade applies immediately with no proration delay."}},
694    {"@type": "Question", "name": "What happens to my scan history if I downgrade?", "acceptedAnswer": {"@type": "Answer", "text": "You keep all historical scans. The new plan's retention window applies to new scans (30 days Starter/Pro, 90 days Business, unlimited Enterprise). Existing older scans retain their original retention window for up to 30 days from the downgrade date."}},
695    {"@type": "Question", "name": "How do team seats work on Business?", "acceptedAnswer": {"@type": "Answer", "text": "Business at $39.99/mo includes 5 team seats, shared 100,000 humanizer words/month, shared 10,000 API calls/month, shared 90-day scan history. Owner invites seats by email from Settings → Team. Quota is pooled at the team level. Enterprise extends to 10 seats with more available at $8/seat/month."}},
696    {"@type": "Question", "name": "What payment methods do you accept?", "acceptedAnswer": {"@type": "Answer", "text": "All major credit/debit cards (Visa, Mastercard, Amex, Discover) plus Apple Pay, Google Pay, and SEPA in supported regions, all processed through Stripe. Card numbers never touch our servers. Enterprise customers can pay by invoice with NET-30 terms."}}
697  ]
698}
699</script>
699
700
701<!-- ============ CTA ============ -->
702<section data-ts-block="further-reading" style="padding:48px 0;background:#fafafa;border-top:1px solid #e4e4e7;"><div style="max-width:820px;margin:0 auto;padding:0 20px;"><h2 style="font-size:22px;margin:0 0 14px;">Further reading</h2><ul style="margin:0;padding-left:20px;line-height:2;"><li><a href="/blog/what-is-ai-content-detection/">What Is AI Content Detection? (2026 Beginner Guide)</a></li><li><a href="/blog/how-to-avoid-ai-detection-student-2026/">Falsely Flagged as AI as a Student? 2026 Guide</a></li></ul></div></section><section class="cta-final" data-screen-label="Final CTA">
703  <h2>Start <span class="italic">free.</span> Upgrade when it actually matters.</h2>
704  <p>The Free plan is enough for most people. We made it that way on purpose.</p>
705  <div class="cta-actions">
706    <a class="btn primary" href="https://app.textsight.ai/signup">Start free</a>
707    <a class="btn-ghost-dark" href="contact.html">Talk to sales</a>
708  </div>
709</section>
710
711
712<!-- Disable chrome.js footer injection — we render a hardcoded rich footer below -->
713<span id="ts-footer-disable" hidden></span>
714
715<!-- ============ FOOTER (preserved from live: 30+ internal links, newsletter, social, trust badges, GSTIN) ============ -->
716<footer class="footer">
717  <div class="container">
718
719    <!-- Newsletter -->
720    <div class="footer-newsletter">
721      <div class="footer-newsletter-content">
722        <h3>Stay Updated</h3>
723        <p>Get the latest AI detection tips, product updates, and content writing insights.</p>
724      </div>
725      <form class="footer-newsletter-form" onsubmit="subscribeNewsletter(event)">
726        <input type="email" placeholder="Enter your email" aria-label="Email address for newsletter" required class="footer-newsletter-input" id="newsletterEmail" autocomplete="email">
727        <button type="submit" class="btn btn-primary footer-newsletter-btn" id="newsletterBtn">Subscribe</button>
728      </form>
729    </div>
730
731    <div class="footer-grid">
732      <div class="footer-brand">
733        <a href="/" class="logo">
734          <img src="/textsight-logo-dark.svg" alt="TextSight.ai" width="165" height="50" style="height: 50px; width: auto;">
735        </a>
736        <p>Combines AI detection, Humanization Score, and rewrite suggestions in one workflow. Detect, understand, and improve.</p>
737        <div class="footer-social">
738          <a href="https://x.com/TextsightAI" target="_blank" rel="noopener noreferrer" aria-label="Twitter/X"><svg viewBox="0 0 24 24" fill="currentColor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg></a>
739          <a href="https://www.linkedin.com/company/textsightai" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn"><svg viewBox="0 0 24 24" fill="currentColor"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg></a>
740          <a href="https://www.facebook.com/people/TextSight-AI/61584504853307/" target="_blank" rel="noopener noreferrer" aria-label="Facebook"><svg viewBox="0 0 24 24" fill="currentColor"><path d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/></svg></a>
741          <a href="https://www.instagram.com/textsight.ai/" target="_blank" rel="noopener noreferrer" aria-label="Instagram"><svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C15.668.014 15.259 0 12 0zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z"/></svg></a>
742        </div>
743      </div>
744      <div class="footer-column">
745        <h4>Product</h4>
746        <ul>
747          <li><a href="features.html">Features</a></li>
748          <li><a href="pricing.html">Pricing</a></li>
749          <li><a href="compare.html">Compare</a></li>
750          <li><a href="https://app.textsight.ai/login">Dashboard</a></li>
751          <li><a href="api-docs.html">API Docs</a></li>
752        </ul>
753      </div>
754      <div class="footer-column footer-tools-detect">
755        <h4>
755Detect</h4>
756        <ul>
757          <li><a href="https://app.textsight.ai">AI Detector</a></li>
758          <li><a href="/tools/hallucination-detector/">Hallucination Detector</a></li>
759          <li><a href="/tools/document-detector/">Document Detector</a></li>
760          <li><a href="/tools/image-detector/">Image Detector</a></li>
761          <li><a href="/tools/voice-detector/">Voice Detector</a></li>
762          <li><a href="/tools/plagiarism-checker/">Plagiarism Risk</a></li>
763        <li><a href="/voice-detection/">Voice detection guides</a></li></ul>
764      </div>
765      <div class="footer-column footer-tools-write">
766        <h4>Write</h4>
767        <ul>
768          <li><a href="https://app.textsight.ai/ai">AI Humanizer</a></li>
769          <li><a href="/tools/paraphraser/">Paraphraser</a></li>
770          <li><a href="/tools/summarizer/">Summarizer</a></li>
771          <li><a href="/tools/translator/">Translator</a></li>
772          <li><a href="/tools/essay-outline/">Essay Outline</a></li>
773        </ul>
774      </div>
775      <div class="footer-column footer-tools-refine">
776        <h4>Refine</h4>
777        <ul>
778          <li><a href="/tools/grammar-checker/">Grammar Checker</a></li>
779          <li><a href="/tools/readability-checker/">Readability</a></li>
780          <li><a href="/tools/ai-vocabulary/">AI Vocabulary</a></li>
781          <li><a href="/tools/word-counter/">Word Counter</a></li>
782          <li><a href="/tools/text-compare/">Text Compare</a></li>
783        </ul>
784      </div>
785      <div class="footer-column footer-tools-research">
786        <h4>Research</h4>
787        <ul>
788          <li><a href="/tools/fact-checker/">Fact-Checker</a></li>
789          <li><a href="/tools/citation-generator/">Citation Generator</a></li>
790          <li><a href="/tools/youtube-summarizer/">YouTube Summarizer</a></li>
791          <li><a href="/tools/pdf-summarizer/">PDF Summarizer</a></li>
792          <li><a href="/tools/url-summarizer/">URL Summarizer</a></li>
793        </ul>
794      </div>
795      <div class="footer-column">
796        <h4>Use Cases</h4>
797        <ul>
798          <li><a href="/for-students/">Students</a></li>
799          <li><a href="/for-writers/">Content Writers</a></li>
800          <li><a href="/for-seo-agencies/">SEO Agencies</a></li>
801          <li><a href="/for-teachers/">Educators</a></li>
802        </ul>
803      </div>
804      <div class="footer-column">
805        <h4>Alternatives</h4>
806        <ul>
807          <li><a href="/originality-ai-alternative/">vs Originality.ai</a></li>
808          <li><a href="/gptzero-alternative/">vs GPTZero</a></li>
809          <li><a href="/undetectable-ai-alternative/">vs Undetectable.ai</a></li>
810          <li><a href="/compare.html">Full comparison</a></li>
811        </ul>
812      </div>
813      <div class="footer-column">
814        <h4>Company</h4>
815        <ul>
816          <li><a href="about.html">About Us</a></li>
817          <li><a href="faq.html">FAQ</a></li>
818          <li><a href="blog.html">Blog</a></li>
819          <li><a href="contact.html">Contact</a></li>
820        
821          <li><a href="/research/">Research</a></li>
822          <li><a href="/affiliates/">Affiliates</a></li>
823        </ul>
824      </div>
825      <div class="footer-column">
826        <h4>Legal</h4>
827        <ul>
828          <li><a href="privacy.html">Privacy Policy</a></li>
829          <li><a href="terms.html">Terms of Service</a></li>
830          <li><a href="cookie-policy.html">Cookie Policy</a></li>
831        </ul>
832      </div>
833    </div>
834
835    <div class="footer-badges">
836      <div class="footer-badges-group">
837        <span class="footer-badges-label">Security</span>
838        <div class="footer-badge-items">
839          <span class="footer-badge security">
840            <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" width="14" height="14"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></svg>
841            SSL Encrypted
842          </span>
843          <span class="footer-badge security">
844            <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" width="14" height="14"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
845            Data Protected
846          </span>
847          <span class="footer-badge security">
848            <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" width="14" height="14"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>
849            Privacy First
850          </span>
851        </div>
852      </div>
853    </div>
854
855    <div class="footer-bottom">
856      <p>&copy; 2026 TextSight.ai · Operated by <a href="/about.html">Lacewing Technologies</a> · Maharashtra, India · GSTIN 27BSZPB5125R1ZW</p>
857      <div class="footer-legal">
858        <a href="privacy.html">Privacy</a>
859        <a href="terms.html">Terms</a>
860        <a href="cookie-policy.html">Cookies</a>
861      </div>
862    </div>
863
864  </div>
865</footer>
866
867<script src="/js/lp/chrome.js?v=20261003a"></script>
867
868<!-- live landing.js: cookie consent + newsletter handlers -->
869<script src="js/landing.js?v=20260603"></script>
vendor: 1 bytes, line 869
869
870<script>
871// Billing toggle: swaps prices + billed-yearly subtitle per card
872const tg = document.querySelectorAll('.toggle-row button');
873tg.forEach(b => b.addEventListener('click', () => {
874  tg.forEach(o => o.classList.remove('active'));
875  b.classList.add('active');
876  const mode = b.dataset.billing;
877  document.querySelectorAll('.amt').forEach(amt => {
878    amt.textContent = amt.dataset[mode];
879  });
880  document.querySelectorAll('.price-card .billed').forEach(el => {
881    const txt = el.dataset[mode];
882    el.innerHTML = txt && txt.trim() ? txt : '&nbsp;';
883  });
884}));
885</script>
885
886
887<!-- ============ SEO + TRACKING (preserved from live) ============
888     The old supplementary 8-Q FAQPage block was removed when this page
889     was restored 2026-05-30 — the canonical 12-Q FAQPage schema now
890     lives inline with the visible FAQ section above. Google requires
891     one FAQPage block per page; multiple blocks trigger a warning. -->
892
893    <!-- Cookie Consent Banner -->
894    <div class="cookie-consent" id="cookieConsent">
895    <div class="cookie-consent-content">
896        <div class="cookie-consent-text">
897            <div class="cookie-consent-icon">🍪</div>
898            <p>We use cookies to improve your experience. <a href="cookie-policy.html">Learn more</a></p>
899        </div>
900        <div class="cookie-consent-buttons">
901            <button class="cookie-btn cookie-btn-decline" onclick="rejectAllCookies()">Decline</button>
902            <button class="cookie-btn cookie-btn-accept" onclick="acceptAllCookies()">Accept All</button>
903        </div>
904    </div>
905</div>
906<!-- Structured Data - JSON-LD -->
907<script type="application/ld+json">
908{
909  "@context": "https://schema.org",
910  "@type": "BreadcrumbList",
911  "itemListElement": [
912    {"@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.textsight.ai/"},
913    {"@type": "ListItem", "position": 2, "name": "Pricing", "item": "https://www.textsight.ai/pricing.html"}
914  ]
915}
916</script>
vendor: 1 bytes, line 916
916
917<script type="application/ld+json">
918{
919  "@context": "https://schema.org",
920  "@type": "WebPage",
921  "name": "TextSight.ai Pricing",
922  "description": "Choose the right TextSight.ai plan for your needs. Flexible pricing from free to enterprise with AI detection, humanizer, and bulk scanning features.",
923  "url": "https://www.textsight.ai/pricing.html",
924  "publisher": {
925    "@type": "Organization",
926    "name": "TextSight.ai",
927    "url": "https://www.textsight.ai"
928  }
929}
930</script>
vendor: 1 bytes, line 930
930
931<script type="application/ld+json">
932{
933  "@context": "https://schema.org",
934  "@type": "Product",
935  "name": "TextSight.ai AI Detection Platform",
936  "description": "AI content detection and humanizer platform with multiple pricing tiers.",
937  "brand": {
938    "@type": "Organization",
939    "name": "TextSight.ai"
940  },
941  "offers": [
942    {
943      "@type": "Offer",
944      "name": "Free",
945      "price": "0",
946      "priceCurrency": "USD",
947      "url": "https://www.textsight.ai/pricing.html"
948    },
949    {
950      "@type": "Offer",
951      "name": "Starter",
952      "price": "9.99",
953      "priceCurrency": "USD",
954      "url": "https://www.textsight.ai/pricing.html"
955    },
956    {
957      "@type": "Offer",
958      "name": "Pro",
959      "price": "19.99",
960      "priceCurrency": "USD",
961      "url": "https://www.textsight.ai/pricing.html"
962    },
963    {
964      "@type": "Offer",
965      "name": "Business",
966      "price": "39.99",
967      "priceCurrency": "USD",
968      "url": "https://www.textsight.ai/pricing.html"
969    },
970    {
971      "@type": "Offer",
972      "name": "Enterprise",
973      "price": "79.99",
974      "priceCurrency": "USD",
975      "url": "https://www.textsight.ai/pricing.html"
976    }
977  ]
978}
979</script>
vendor: 1 bytes, line 979
979
980<script type="text/javascript">window.$crisp=[];window.CRISP_WEBSITE_ID="ecf1cc9f-85a6-4d91-8619-92e66b3a47f3";(function(){d=document;s=d.createElement("script");s.src="https://client.crisp.chat/l.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})();</script>
980
981</body>
982</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.