<!DOCTYPE html><html lang="en" data-user-lang="en" dir="ltr"><head><script>
(function(){if(localStorage.getItem('free_dark_mode')==='true')document.documentElement.classList.add('dark');})();
</script>

    <meta charset="utf-8">
    
    <script>
    window.FREE = window.FREE || {};
    window.FREE.pendingPrompt = null;
    // Minimal tracker available before utils.js loads. Inline-script funnel
    // events (pricing_page_viewed, buy_button_clicked) were silently no-oping
    // because they ran before utils defined itself - use window.track() instead.
    window.track = function(type, tool, data){
        try {
            var body = JSON.stringify({event_type:type, tool:tool||'', data:data||{}, url:location.href});
            if (navigator.sendBeacon) {
                var blob = new Blob([body], {type:'application/json'});
                navigator.sendBeacon('/api/v1/track/', blob);
            } else {
                fetch('/api/v1/track/', {method:'POST', headers:{'Content-Type':'application/json'}, body:body, keepalive:true}).catch(function(){});
            }
        } catch(e) {}
    };
    </script>
    
    <meta name="viewport" content="width=device-width, initial-scale=1, interactive-widget=resizes-content">
    
    
    <title>Free AI for Startups | Free.ai</title>
    <meta name="description" content="AI tools and API access for startups. Free tier included.">
    
    <link rel="canonical" href="https://free.ai/startup/">

    
    <link rel="alternate" hreflang="x-default" href="https://free.ai/startup/">
    <link rel="alternate" hreflang="en" href="https://free.ai/startup/">
    
    <link rel="alternate" hreflang="zh" href="https://free.ai/startup/?lang=zh">
    
    <link rel="alternate" hreflang="es" href="https://free.ai/startup/?lang=es">
    
    <link rel="alternate" hreflang="ar" href="https://free.ai/startup/?lang=ar">
    
    <link rel="alternate" hreflang="pt" href="https://free.ai/startup/?lang=pt">
    
    <link rel="alternate" hreflang="id" href="https://free.ai/startup/?lang=id">
    
    <link rel="alternate" hreflang="ja" href="https://free.ai/startup/?lang=ja">
    
    <link rel="alternate" hreflang="ru" href="https://free.ai/startup/?lang=ru">
    
    <link rel="alternate" hreflang="fr" href="https://free.ai/startup/?lang=fr">
    
    <link rel="alternate" hreflang="de" href="https://free.ai/startup/?lang=de">
    
    <link rel="alternate" hreflang="ko" href="https://free.ai/startup/?lang=ko">
    
    <link rel="alternate" hreflang="tr" href="https://free.ai/startup/?lang=tr">
    
    <link rel="alternate" hreflang="vi" href="https://free.ai/startup/?lang=vi">
    
    <link rel="alternate" hreflang="it" href="https://free.ai/startup/?lang=it">
    
    <link rel="alternate" hreflang="pl" href="https://free.ai/startup/?lang=pl">
    
    <link rel="alternate" hreflang="nl" href="https://free.ai/startup/?lang=nl">
    
    <link rel="alternate" hreflang="fa" href="https://free.ai/startup/?lang=fa">
    
    <link rel="alternate" hreflang="th" href="https://free.ai/startup/?lang=th">
    
    <link rel="alternate" hreflang="hi" href="https://free.ai/startup/?lang=hi">
    
    <link rel="alternate" hreflang="uk" href="https://free.ai/startup/?lang=uk">
    
    <link rel="alternate" hreflang="bg" href="https://free.ai/startup/?lang=bg">
    
    <link rel="alternate" hreflang="ro" href="https://free.ai/startup/?lang=ro">
    
    <link rel="alternate" hreflang="el" href="https://free.ai/startup/?lang=el">
    
    <link rel="alternate" hreflang="sv" href="https://free.ai/startup/?lang=sv">
    
    <link rel="alternate" hreflang="he" href="https://free.ai/startup/?lang=he">
    
    <link rel="alternate" hreflang="hu" href="https://free.ai/startup/?lang=hu">
    
    <link rel="alternate" hreflang="cs" href="https://free.ai/startup/?lang=cs">
    
    <link rel="alternate" hreflang="da" href="https://free.ai/startup/?lang=da">
    
    <link rel="alternate" hreflang="fi" href="https://free.ai/startup/?lang=fi">
    
    <link rel="alternate" hreflang="no" href="https://free.ai/startup/?lang=no">
    
    <link rel="alternate" hreflang="sk" href="https://free.ai/startup/?lang=sk">
    
    <link rel="alternate" hreflang="hr" href="https://free.ai/startup/?lang=hr">
    
    <link rel="alternate" hreflang="lt" href="https://free.ai/startup/?lang=lt">
    
    <link rel="alternate" hreflang="lv" href="https://free.ai/startup/?lang=lv">
    
    <link rel="alternate" hreflang="et" href="https://free.ai/startup/?lang=et">
    
    <link rel="alternate" hreflang="sl" href="https://free.ai/startup/?lang=sl">
    
    <link rel="alternate" hreflang="sr" href="https://free.ai/startup/?lang=sr">
    
    <link rel="alternate" hreflang="bs" href="https://free.ai/startup/?lang=bs">
    
    <link rel="alternate" hreflang="ca" href="https://free.ai/startup/?lang=ca">
    
    <link rel="alternate" hreflang="eu" href="https://free.ai/startup/?lang=eu">
    
    <link rel="alternate" hreflang="ga" href="https://free.ai/startup/?lang=ga">
    
    <link rel="alternate" hreflang="tl" href="https://free.ai/startup/?lang=tl">
    
    <link rel="alternate" hreflang="ms" href="https://free.ai/startup/?lang=ms">
    
    <link rel="alternate" hreflang="bn" href="https://free.ai/startup/?lang=bn">
    
    <link rel="alternate" hreflang="ta" href="https://free.ai/startup/?lang=ta">
    
    <link rel="alternate" hreflang="ur" href="https://free.ai/startup/?lang=ur">
    
    <link rel="alternate" hreflang="sw" href="https://free.ai/startup/?lang=sw">
    
    <link rel="alternate" hreflang="is" href="https://free.ai/startup/?lang=is">
    
    <link rel="alternate" hreflang="mt" href="https://free.ai/startup/?lang=mt">
    
    <link rel="alternate" hreflang="af" href="https://free.ai/startup/?lang=af">
    
    <link rel="alternate" hreflang="be" href="https://free.ai/startup/?lang=be">
    
    <link rel="alternate" hreflang="ka" href="https://free.ai/startup/?lang=ka">
    
    <link rel="alternate" hreflang="am" href="https://free.ai/startup/?lang=am">
    
    <link rel="alternate" hreflang="lb" href="https://free.ai/startup/?lang=lb">
    
    <link rel="alternate" hreflang="ig" href="https://free.ai/startup/?lang=ig">
    
    <link rel="alternate" hreflang="pa" href="https://free.ai/startup/?lang=pa">
    
    <link rel="alternate" hreflang="co" href="https://free.ai/startup/?lang=co">
    
    <link rel="alternate" hreflang="ne" href="https://free.ai/startup/?lang=ne">
    
    <link rel="alternate" hreflang="gl" href="https://free.ai/startup/?lang=gl">
    
    <link rel="alternate" hreflang="mg" href="https://free.ai/startup/?lang=mg">
    
    <link rel="alternate" hreflang="kk" href="https://free.ai/startup/?lang=kk">
    
    <link rel="alternate" hreflang="mi" href="https://free.ai/startup/?lang=mi">
    
    <link rel="alternate" hreflang="sd" href="https://free.ai/startup/?lang=sd">
    
    <link rel="alternate" hreflang="km" href="https://free.ai/startup/?lang=km">
    
    <link rel="alternate" hreflang="mk" href="https://free.ai/startup/?lang=mk">
    
    <link rel="alternate" hreflang="te" href="https://free.ai/startup/?lang=te">
    
    <link rel="alternate" hreflang="kn" href="https://free.ai/startup/?lang=kn">
    
    <link rel="alternate" hreflang="ml" href="https://free.ai/startup/?lang=ml">
    
    <link rel="alternate" hreflang="az" href="https://free.ai/startup/?lang=az">
    
    <link rel="alternate" hreflang="lo" href="https://free.ai/startup/?lang=lo">
    
    <link rel="alternate" hreflang="mn" href="https://free.ai/startup/?lang=mn">
    
    <link rel="alternate" hreflang="tg" href="https://free.ai/startup/?lang=tg">
    
    <link rel="alternate" hreflang="gu" href="https://free.ai/startup/?lang=gu">
    
    <link rel="alternate" hreflang="si" href="https://free.ai/startup/?lang=si">
    
    <link rel="alternate" hreflang="cy" href="https://free.ai/startup/?lang=cy">
    
    <link rel="alternate" hreflang="ht" href="https://free.ai/startup/?lang=ht">
    
    <link rel="alternate" hreflang="ug" href="https://free.ai/startup/?lang=ug">
    
    <link rel="alternate" hreflang="mr" href="https://free.ai/startup/?lang=mr">
    
    <link rel="alternate" hreflang="tk" href="https://free.ai/startup/?lang=tk">
    
    <link rel="alternate" hreflang="xh" href="https://free.ai/startup/?lang=xh">
    
    <link rel="alternate" hreflang="ku" href="https://free.ai/startup/?lang=ku">
    
    <link rel="alternate" hreflang="hy" href="https://free.ai/startup/?lang=hy">
    
    <link rel="alternate" hreflang="jv" href="https://free.ai/startup/?lang=jw">
    
    <link rel="alternate" hreflang="or" href="https://free.ai/startup/?lang=or">
    
    <link rel="alternate" hreflang="sn" href="https://free.ai/startup/?lang=sn">
    
    <link rel="alternate" hreflang="so" href="https://free.ai/startup/?lang=so">
    
    <link rel="alternate" hreflang="yi" href="https://free.ai/startup/?lang=yi">
    
    <link rel="alternate" hreflang="ps" href="https://free.ai/startup/?lang=ps">
    
    <link rel="alternate" hreflang="sq" href="https://free.ai/startup/?lang=sq">
    
    <link rel="alternate" hreflang="ky" href="https://free.ai/startup/?lang=ky">
    
    <link rel="alternate" hreflang="my" href="https://free.ai/startup/?lang=my">
    
    <link rel="alternate" hreflang="st" href="https://free.ai/startup/?lang=st">
    
    <link rel="alternate" hreflang="su" href="https://free.ai/startup/?lang=su">
    
    <link rel="alternate" hreflang="yo" href="https://free.ai/startup/?lang=yo">
    
    <link rel="alternate" hreflang="tt" href="https://free.ai/startup/?lang=tt">
    
    <link rel="alternate" hreflang="rw" href="https://free.ai/startup/?lang=rw">
    
    <link rel="alternate" hreflang="uz" href="https://free.ai/startup/?lang=uz">
    
    <link rel="alternate" hreflang="zu" href="https://free.ai/startup/?lang=zu">
    

    
    <link rel="icon" href="/static/favicon.ico" sizes="32x32">
    <link rel="icon" href="/static/favicon.svg" type="image/svg+xml">
    <link rel="apple-touch-icon" href="/static/img/icon-192.png">
    <link rel="manifest" href="/static/manifest.json">
    <meta name="theme-color" content="#16A34A">

    
    <meta property="og:type" content="website">
    <meta property="og:site_name" content="Free.ai">
    <meta property="og:title" content="Free AI for Startups | Free.ai">
    <meta property="og:description" content="AI tools and API access for startups. Free tier included.">
    <meta property="og:image" content="https://free.ai/og/startups.png">
    <meta property="og:url" content="https://free.ai/startup/">

    
    <meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:title" content="Free AI for Startups | Free.ai">
    <meta name="twitter:description" content="AI tools and API access for startups. Free tier included.">
    <meta name="twitter:image" content="https://free.ai/og/startups.png">

    
    <link rel="preload" as="font" type="font/woff2" crossorigin="" href="/static/vendor/bootstrap-icons/fonts/bootstrap-icons.woff2?dd67030699838ea613ee6dbda90effa6">
    
    <link href="/static/vendor/bootstrap/css/bootstrap.min.css?v=1.0.1786492124" rel="stylesheet">
    <link rel="stylesheet" href="/static/vendor/bootstrap-icons/bootstrap-icons.min.css?v=1.0.1786492124">
    <link rel="stylesheet" href="/static/css/styles.css?v=1.0.1786492124">
    <link rel="stylesheet" href="/static/css/chat-composer.css?v=1.0.1786492124">
    

    

    
    <script type="application/ld+json">
    {
        "@context": "https://schema.org",
        "@graph": [
            {
                "@type": "Organization",
                "@id": "https://free.ai/#organization",
                "name": "Free.ai",
                "alternateName": ["Free AI", "FreeAI"],
                "url": "https://free.ai",
                "logo": {"@type": "ImageObject", "url": "https://free.ai/static/img/icon-512.png", "width": 512, "height": 512},
                "description": "Free.ai is a free AI platform with tools for chat, image generation, video, audio, writing, coding, and translation - many usable without an account.",
                "sameAs": [
                    "https://github.com/freeaigit",
                    "https://www.npmjs.com/package/freeai-code",
                    "https://pypi.org/project/free-dot-ai/",
                    "https://pypi.org/project/freeai-code/",
                    "https://play.google.com/store/apps/details?id=free.ai"
                ]
            },
            {
                "@type": "WebSite",
                "@id": "https://free.ai/#website",
                "name": "Free.ai",
                "url": "https://free.ai",
                "publisher": {"@id": "https://free.ai/#organization"},
                "potentialAction": {
                    "@type": "SearchAction",
                    "target": "https://free.ai/tools/?q={search_term_string}",
                    "query-input": "required name=search_term_string"
                }
            },
            {
                "@type": "MobileApplication",
                "@id": "https://free.ai/#android-app",
                "name": "Free.ai",
                "operatingSystem": "Android",
                "applicationCategory": "ProductivityApplication",
                "url": "https://play.google.com/store/apps/details?id=free.ai",
                "downloadUrl": "https://play.google.com/store/apps/details?id=free.ai",
                "installUrl": "https://play.google.com/store/apps/details?id=free.ai",
                "publisher": {"@id": "https://free.ai/#organization"},
                "offers": {"@type": "Offer", "price": "0", "priceCurrency": "USD"}
            }
            ,
            {
                "@type": "BreadcrumbList",
                "itemListElement": [
                    {
                        "@type": "ListItem",
                        "position": 1,
                        "name": "Home",
                        "item": "https://free.ai/"
                    },
                    {
                        "@type": "ListItem",
                        "position": 2,
                        "name": "Startups",
                        "item": ""
                    }
                ]
            }
            
            
        ]
    }
    </script>
    
    
    <script type="application/ld+json">
    {
        "@context": "https://schema.org",
        "@type": "WebPage",
        "name": "Free AI for Startups",
        "description": "AI tools and API access for startups. Free tier included.",
        "url": "https://free.ai/startup/",
        "isPartOf": {"@type": "WebSite", "name": "Free.ai", "url": "https://free.ai"},
        "provider": {"@type": "Organization", "name": "Free.ai", "url": "https://free.ai"},
        "inLanguage": "en",
        "availableLanguage": ["af","am","ar","az","be","bg","bn","bs","ca","cs","cy","da","de","el","en","es","et","eu","fa","fi","fr","ga","gl","gu","ha","he","hi","hr","hu","hy","id","ig","is","it","ja","ka","kk","km","kn","ko","ku","ky","lo","lt","lv","mk","ml","mn","mr","ms","mt","my","ne","nl","no","pa","pl","pt","ro","ru","sd","si","sk","sl","sq","sr","sv","sw","ta","te","tg","th","tr","uk","ur","uz","vi","yo","zh","zu"],
        "areaServed": {"@type": "Place", "name": "Worldwide"}
    }
    </script>
    
    

    
    <link rel="preconnect" href="https://api.free.ai">

    
    

    
    

    
    <script>
    if (typeof Promise !== 'undefined' && !Promise.prototype.finally) {
        Promise.prototype.finally = function(cb) {
            var P = this.constructor;
            return this.then(
                function(v) { return P.resolve(cb()).then(function() { return v; }); },
                function(r) { return P.resolve(cb()).then(function() { throw r; }); }
            );
        };
    }
    </script>
</head>
<body class="">
    
    
    
    
    
    
    <style>
        nav.navbar .nav-link{white-space:nowrap}
        @media (min-width:1200px){
            nav.navbar > .container-fluid{padding-left:1.25rem;padding-right:1.25rem}
            nav.navbar .navbar-nav .nav-link{padding-left:.55rem;padding-right:.55rem}
        }
        
        
        
        
        nav.navbar.nav-collapsed .nav-toggle-wrap{display:flex !important}
    </style>
    <nav class="navbar navbar-expand-xl bg-white border-bottom py-0 sticky-top" style="min-height:56px;z-index:1030">
        <div class="container-fluid px-3">
            <a class="navbar-brand fw-bold d-flex align-items-center" href="/" style="font-size:2.2rem;color:#1a1a1a;letter-spacing:-1px">
                <span style="color:#16A34A">Free</span><span>.ai</span>
            </a>
            
            
            
            
            
            
            <div class="nav-toggle-wrap d-flex d-xl-none align-items-center">
                <a id="token-counter-mobile" href="/signup/" class="text-decoration-none me-2" style="visibility: visible; min-width: 80px;">
                    <span id="free-gen-text-mobile" style="display:block;font-size:.6rem;color:#555;white-space:nowrap;text-align:center">6,000 free today</span>
                    <span style="height: 3px; border-radius: 2px; background: rgb(232, 232, 234); margin-top: 1px; overflow: hidden;">
                        <span id="free-gen-bar-mobile" style="display:block;height:100%;border-radius:2px;background:#22c55e;width:100%;transition:width .3s"></span>
                    </span>
                    
                    <span style="display:block;font-size:.6rem;color:#16A34A;white-space:nowrap;font-weight:600;text-align:center;margin-top:1px">Sign up - 30K/day</span>
                    
                </a>
                
                
                
                
                
                
                <button class="navbar-toggler border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
                    <span class="navbar-toggler-icon"></span>
                </button>
            </div>
            <div class="collapse navbar-collapse" id="navbarNav">
                <ul class="navbar-nav me-auto">
                    <li class="nav-item">
                        
                        <button type="button" class="nav-link btn btn-link px-2" id="global-search-btn" aria-label="Search tools and models" style="border:none;background:none">
                            <i class="bi bi-search" style="font-size:1rem"></i>
                            <span class="d-none d-md-inline ms-1 text-muted" style="font-size:.72rem;border:1px solid #e5e7eb;border-radius:6px;padding:1px 6px;background:#f8fafc">⌘K</span>
                        </button>
                    </li>
                    <li class="nav-item">
                        
                        <a class="nav-link" href="/chat/">Chat</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="/search/">Search</a>
                    </li>
                    <li class="nav-item">
                        
                        <a class="nav-link" href="/my-ai/">My AI</a>
                    </li>
                    <li class="nav-item dropdown">
                        <a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown">Tools</a>
                        <ul class="dropdown-menu">
                            <li><a class="dropdown-item" href="/chat/"><i class="bi bi-chat-dots me-2"></i>AI Chat</a></li>
                            <li><a class="dropdown-item" href="/search/"><i class="bi bi-search me-2"></i>AI Search</a></li>
                            <li><a class="dropdown-item" href="/my-ai/"><i class="bi bi-person-badge me-2"></i>My AI</a></li>
                            <li><a class="dropdown-item" href="/image/"><i class="bi bi-image me-2"></i>Image Generator</a></li>
                            <li><a class="dropdown-item" href="/video/"><i class="bi bi-camera-video me-2"></i>Video Generator</a></li>
                            <li><a class="dropdown-item" href="/text-to-speech/"><i class="bi bi-mic me-2"></i>Text to Speech</a></li>
                            <li><a class="dropdown-item" href="/voice/"><i class="bi bi-soundwave me-2"></i>AI Voice Generator</a></li>
                            <li><a class="dropdown-item" href="/music/"><i class="bi bi-music-note-beamed me-2"></i>Music Generator</a></li>
                            <li><a class="dropdown-item" href="/write/"><i class="bi bi-pencil-square me-2"></i>AI Writer</a></li>
                            <li><a class="dropdown-item" href="/code/"><i class="bi bi-code-slash me-2"></i>Code Generator</a></li>
                            <li><a class="dropdown-item" href="/transcribe/"><i class="bi bi-file-earmark-text me-2"></i>Transcription</a></li>
                            <li><a class="dropdown-item" href="/generator/"><i class="bi bi-stars me-2"></i>AI Generator</a></li>
                            <li><a class="dropdown-item" href="/coder/"><i class="bi bi-terminal me-2"></i>Free.ai Coder <span class="badge bg-success ms-1" style="font-size:.55rem">New</span></a></li>
                            <li><a class="dropdown-item fw-semibold" href="/tools/">All 400+</a></li>
                        </ul>
                    </li>
                    <li class="nav-item dropdown">
                        <a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown">Models</a>
                        <ul class="dropdown-menu">
                            
                            
                            
                            <li><a class="dropdown-item" href="/models/"><i class="bi bi-grid me-2"></i>All Models (346+)</a></li>
                            <li><a class="dropdown-item" href="/voices/"><i class="bi bi-mic me-2"></i>Voice Catalog</a></li>
                            <li><a class="dropdown-item" href="/arena/"><i class="bi bi-trophy me-2"></i>AI Arena</a></li>
                            <li><a class="dropdown-item" href="/chat/compare/"><i class="bi bi-layout-split me-2"></i>Side-by-Side Chat</a></li>
                        </ul>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="/pricing/">Pricing</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="/api/">API</a>
                    </li>
                    
                    
                    
                    <li class="nav-item">
                        <a class="nav-link" href="/ios/" title="Free.ai for iOS" aria-label="Free.ai for iOS"><i class="bi bi-apple"></i></a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="https://play.google.com/store/apps/details?id=free.ai" rel="noopener" title="Free.ai for Android" aria-label="Free.ai for Android"><i class="bi bi-android2"></i></a>
                    </li>
                </ul>

                
                
                
                <ul class="navbar-nav">
                    <li class="nav-item">
                        <a class="nav-link" href="/language/?return=/startup/" title="Change language" style="color:#6b7280">
                            <i class="bi bi-globe"></i>
                        </a>
                    </li>
                    <li class="nav-item">
                        <button id="dark-mode-toggle" type="button" class="nav-link bg-transparent border-0" title="Toggle dark mode" style="color:#6b7280">
                            <i class="bi bi-moon-fill"></i>
                        </button>
                    </li>
                </ul>

                
                <div class="d-flex align-items-center me-2">
                    
                    
                    <a id="token-counter" href="/signup/" class="text-decoration-none me-2" style="cursor: pointer; visibility: visible;" title="Free tokens remaining today">
                        <span class="d-flex align-items-center gap-1" style="font-size:.7rem">
                            <span style="color:#16A34A;white-space:nowrap;font-weight:600">Sign up - 30K/day</span>
                        </span>
                    </a>
                    
                </div>

                <ul class="navbar-nav">
                    
                    <li class="nav-item d-flex align-items-center">
                        <a class="nav-link" href="/login/" style="font-size:1rem">Log in</a>
                    </li>
                    
                    
                    <li class="nav-item d-flex align-items-center">
                        <a class="btn btn-primary fw-bold ms-2" href="/signup/" id="signup-cta" style="padding:.55rem 1.4rem;font-size:1rem;border-radius:.6rem;letter-spacing:-.01em">Sign Up</a>
                    </li>
                    
                    
                </ul>
            </div>
        </div>
    </nav>
    <script>
    // Content-aware navbar collapse. The horizontal nav fits English fine, but
    // long-label locales (e.g. Malagasy "Pricing" = "Famaritana ny vidin'ny
    // entana") can be wider than the viewport. Rather than wrap (ugly) or
    // overflow off the right edge, drop the expand class so it becomes a clean
    // hamburger whenever the row would not fit. Re-checked on resize.
    (function(){
        var nav = document.querySelector('nav.navbar');
        if(!nav) return;
        var box = nav.querySelector('.container-fluid');
        if(!box) return;
        var BASE = 'navbar-expand-xl';
        function evaluate(){
            // Measure in the expanded state, then decide.
            nav.classList.remove('nav-collapsed');
            nav.classList.add(BASE);
            // 2px tolerance for sub-pixel rounding.
            var overflows = box.scrollWidth > box.clientWidth + 2;
            if(overflows){
                nav.classList.remove(BASE);
                nav.classList.add('nav-collapsed');
            }
        }
        evaluate();
        // Re-run after webfonts settle (label widths can shift) + on resize.
        window.addEventListener('load', evaluate);
        var t; window.addEventListener('resize', function(){ clearTimeout(t); t = setTimeout(evaluate, 150); });
    })();
    </script>

    
    
    <div class="bg-light border-bottom py-1 breadcrumbs-bar">
        <div class="container d-flex justify-content-between align-items-center">
            <nav aria-label="breadcrumb">
                <ol class="breadcrumb mb-0 small">
                    
                    
                    
                        <li class="breadcrumb-item"><a href="/" class="text-decoration-none">Home</a></li>
                        
                    
                    
                    
                    
                        <li class="breadcrumb-item active" aria-current="page">Startups</li>
                    
                    
                </ol>
            </nav>
            <a href="/contact/?ref=/startup/" class="text-muted small text-decoration-none" rel="nofollow"><i class="bi bi-bug me-1"></i><span class="d-none d-md-inline">Report Bug / Feature Request</span></a>
        </div>
    </div>
    

    <main>
        
<div class="container py-4">
    <div class="text-center mb-4">
        <h1 class="fw-bold" style="font-size:2rem">Free AI for Startups</h1>
        <p class="text-muted lead">AI tools and API access for startups. Free tier included.</p>
        
    </div>

    
<div class="row justify-content-center">
    <div class="col-lg-8">

        <div class="card border-0 shadow-sm mb-4" style="border-radius:14px">
            <div class="card-body p-4 text-center">
                <h3 class="fw-bold mb-3" style="font-size:1.15rem">Free AI Credits for Startups</h3>
                <p class="text-muted mb-0">Early-stage startups qualify for free credits to use across all 200+ AI tools and the Free.ai API. Build your product on AI without upfront costs.</p>
            </div>
        </div>

        <div class="row g-4 mb-4">
            <div class="col-md-4">
                <div class="card border-0 shadow-sm h-100" style="border-radius:14px">
                    <div class="card-body p-4 text-center">
                        <h4 class="fw-bold mb-2" style="font-size:1.05rem">API Access</h4>
                        <p class="text-muted small mb-0">Full access to all API endpoints. Integrate AI chat, image generation, TTS, translation, and more into your product.</p>
                    </div>
                </div>
            </div>
            <div class="col-md-4">
                <div class="card border-0 shadow-sm h-100" style="border-radius:14px">
                    <div class="card-body p-4 text-center">
                        <h4 class="fw-bold mb-2" style="font-size:1.05rem">346+ Models</h4>
                        <p class="text-muted small mb-0">Self-hosted open-source models plus 346+ external models. Find the right model for your use case.</p>
                    </div>
                </div>
            </div>
            <div class="col-md-4">
                <div class="card border-0 shadow-sm h-100" style="border-radius:14px">
                    <div class="card-body p-4 text-center">
                        <h4 class="fw-bold mb-2" style="font-size:1.05rem">Priority Support</h4>
                        <p class="text-muted small mb-0">Accepted startups get priority email support and integration guidance from our team.</p>
                    </div>
                </div>
            </div>
        </div>

        <div class="card border-0 shadow-sm mb-4" style="border-radius:14px">
            <div class="card-body p-4">
                <h3 class="fw-bold mb-3" style="font-size:1.15rem">Who Qualifies</h3>
                <ul class="text-muted mb-0">
                    <li class="mb-2">Company is less than 3 years old</li>
                    <li class="mb-2">Less than $5M in total funding</li>
                    <li class="mb-2">Has a working product or prototype</li>
                    <li class="mb-2">Not currently on a paid Free.ai plan</li>
                </ul>
            </div>
        </div>

        <div class="card border-0 shadow-sm mb-4" style="border-radius:14px">
            <div class="card-body p-4">
                <h3 class="fw-bold mb-3" style="font-size:1.15rem">Apply for Startup Credits</h3>
                <p class="text-muted mb-3">Tell us about your startup and how you plan to use AI. We review applications within 48 hours.</p>
                <form method="post" action="/contact/">
                    <input type="hidden" name="csrfmiddlewaretoken" value="PIaJncyXFmTB9EZo6pDiCV7oQvx3hLYto6oEaBQpU0Tuj9Zfw9AhNHHrjtwCePzW">
                    <input type="hidden" name="subject" value="Startup Program Application">
                    <div class="mb-3">
                        <label class="form-label small fw-bold">Startup Name</label>
                        <input type="text" name="name" class="form-control" placeholder="Your company name" required="">
                    </div>
                    <div class="mb-3">
                        <label class="form-label small fw-bold">Contact Email</label>
                        <input type="email" name="email" class="form-control" placeholder="you@startup.com" required="">
                    </div>
                    <div class="mb-3">
                        <label class="form-label small fw-bold">Website</label>
                        <input type="url" name="website" class="form-control" placeholder="https://yourstartup.com">
                    </div>
                    <div class="mb-3">
                        <label class="form-label small fw-bold">Stage</label>
                        <select name="stage" class="form-select">
                            <option value="pre-seed">Pre-Seed / Idea</option>
                            <option value="seed">Seed</option>
                            <option value="series-a">Series A</option>
                            <option value="bootstrapped">Bootstrapped</option>
                        </select>
                    </div>
                    <div class="mb-3">
                        <label class="form-label small fw-bold">How will you use Free.ai?</label>
                        <textarea name="message" class="form-control" rows="3" placeholder="Describe your product and how AI fits in..." required=""></textarea>
                    </div>
                    <button type="submit" class="btn btn-primary">Apply for Startup Credits</button>
                </form>
            </div>
        </div>

        <div class="text-center mt-3">
            <p class="text-muted small">Already have a Free.ai account? <a href="/pricing/">View paid plans</a> for immediate upgrade.</p>
        </div>

    </div>
</div>



    
    <div class="row justify-content-center mt-5">
        <div class="col-lg-8">
            <h2 class="fw-bold text-center mb-4" style="font-size:1.3rem">FAQ</h2>
            <div class="accordion" id="pageFaq">
                
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq1">Who qualifies for the Free.ai Startup program?</button></h3><div id="faq1" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Companies less than 3 years old with less than $5M in total funding, a working product or prototype, and not currently on a paid Free.ai plan. This includes pre-seed, seed, Series A, and bootstrapped startups.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq2">What do startups receive?</button></h3><div id="faq2" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Accepted startups receive free credits to use across all 200+ AI tools and the API, access to 346+ models including self-hosted and premium models, and priority email support with integration guidance.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq3">How do I apply?</button></h3><div id="faq3" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Fill out the application form on this page with your startup name, contact email, website, funding stage, and a description of how you plan to use Free.ai. We review applications within 48 hours.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq4">How much credit do startups receive?</button></h3><div id="faq4" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">The credit amount varies based on your startup's stage and planned usage. We work with each startup to provide enough credits to build and launch their AI-powered features without upfront costs.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq5">Can I use the credits for API access?</button></h3><div id="faq5" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Yes. Credits apply to all Free.ai usage including web tools and API calls. You can integrate AI chat, image generation, text-to-speech, translation, and more into your product using the REST API.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq6">Do startup credits expire?</button></h3><div id="faq6" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Credits have a validity period that is communicated when your application is approved. This is typically sufficient for early-stage development and initial user testing.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq7">Can bootstrapped startups apply?</button></h3><div id="faq7" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Yes. Bootstrapped startups are explicitly eligible. The program is designed for all early-stage companies regardless of funding source, as long as they meet the age and funding criteria.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq8">What happens after I use all my credits?</button></h3><div id="faq8" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">You can transition to a paid plan at standard pricing. Startups that have grown with Free.ai can also discuss volume pricing or enterprise plans based on their usage level.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq9">Is there technical support for startups?</button></h3><div id="faq9" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Yes. Accepted startups receive priority email support and guidance on API integration, model selection, and architecture decisions. Our team can help you choose the right approach for your use case.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq10">Can I apply if I already have a Free.ai account?</button></h3><div id="faq10" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">Yes. Apply with your existing account email. If approved, your credits will be added to your existing account. However, you cannot be on a current paid plan to qualify.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq11">What kind of startups typically apply?</button></h3><div id="faq11" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">We see applications from SaaS companies adding AI features, AI-native startups building on language models, ed-tech platforms, content creation tools, developer tools, and companies in healthcare, legal, and finance looking to integrate AI.</div></div></div>
<div class="accordion-item border-0 border-bottom"><h3 class="accordion-header"><button class="accordion-button collapsed py-3" style="font-size:.92rem;font-weight:600" type="button" data-bs-toggle="collapse" data-bs-target="#faq12">Can multiple team members use the startup credits?</button></h3><div id="faq12" class="accordion-collapse collapse" data-bs-parent="#pageFaq"><div class="accordion-body text-muted" style="font-size:.88rem">The credits are tied to your account. For team usage, you can share API keys or contact us about team seats. Enterprise-level team management is available if your startup scales quickly.</div></div></div>

            </div>
        </div>
    </div>
    
</div>

    </main>

    
    

<div class="modal fade" id="emailcapture" tabindex="-1">
    <div class="modal-dialog modal-dialog-centered" style="max-width:420px">
        <div class="modal-content border-0 shadow">
            <div class="modal-header border-0 pb-0">
                <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
            </div>
            <div class="modal-body text-center px-4 pb-4">
                <div class="rounded-circle bg-primary bg-opacity-10 d-inline-flex align-items-center justify-content-center mb-3" style="width:56px;height:56px">
                    <i class="bi bi-gift text-primary" style="font-size:1.5rem"></i>
                </div>
                <h5 class="fw-bold mb-1">30,000 Free Tokens, Every Day</h5>
                <p class="text-muted small mb-3">Just enter your email - no password needed. We'll send you a link to set one later.</p>
                <form id="email-capture-form" method="POST">
                    <input type="hidden" name="csrfmiddlewaretoken" value="PIaJncyXFmTB9EZo6pDiCV7oQvx3hLYto6oEaBQpU0Tuj9Zfw9AhNHHrjtwCePzW">
                    
                    <input type="hidden" id="capture-signup-token" value="1786492214:7zhPUAh8KTE:e148a15ec184a3a83d34e726">
                    <div class="input-group mb-2">
                        <input type="email" class="form-control" id="capture-email" placeholder="your@email.com" required="">
                        <button type="submit" class="btn btn-primary px-3">Sign Up Free</button>
                    </div>
                </form>
                <p class="text-muted" style="font-size:.72rem">No credit card required 30,000 free tokens/day.</p>
            </div>
        </div>
    </div>
</div>

    

<div class="modal fade" id="exitintent" tabindex="-1">
    <div class="modal-dialog modal-dialog-centered" style="max-width:420px">
        <div class="modal-content border-0 shadow">
            <div class="modal-header border-0 pb-0">
                <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
            </div>
            <div class="modal-body text-center px-4 pb-4">
                
                <div class="rounded-circle bg-primary bg-opacity-10 d-inline-flex align-items-center justify-content-center mb-3" style="width:56px;height:56px">
                    <i class="bi bi-stars text-primary" style="font-size:1.5rem"></i>
                </div>
                <h5 class="fw-bold mb-1">Wait - 30K free tokens/day!</h5>
                <p class="text-muted small mb-3">Sign up in 5 seconds. No credit card required.</p>
                <form id="exit-signup-form" method="POST">
                    <input type="hidden" name="csrfmiddlewaretoken" value="PIaJncyXFmTB9EZo6pDiCV7oQvx3hLYto6oEaBQpU0Tuj9Zfw9AhNHHrjtwCePzW">
                    
                    <input type="hidden" id="exit-signup-token" value="1786492214:7zhPUAh8KTE:e148a15ec184a3a83d34e726">
                    <div class="input-group mb-2">
                        <input type="email" class="form-control" id="exit-capture-email" placeholder="your@email.com" required="">
                        <button type="submit" class="btn btn-primary px-3">Get 30K/day Tokens</button>
                    </div>
                </form>
                <p class="text-muted" style="font-size:.72rem">No credit card required 30,000 free tokens/day.</p>
                <a href="/pricing/" class="text-decoration-none small text-muted">Or view our plans</a>
                
            </div>
        </div>
    </div>
</div>
<script>
(function(){
    // Purchase attribution for the 8.5K/wk exit-intent impressions - the
    // modal previously stamped nothing, so any resulting sale read 'direct'.
    var m = document.getElementById('exitintent');
    if (!m) return;
    m.addEventListener('click', function(ev){
        var el = ev.target;
        while (el && el !== m && !(el.classList && el.classList.contains('exit-cta'))) el = el.parentNode;
        if (el && el !== m && window.utils && utils.setPurchaseTrigger) {
            try { utils.setPurchaseTrigger(el.getAttribute('data-trigger') || 'exit_intent'); } catch(e) {}
        }
    });
})();
</script>

    
<div id="share-prompt" class="d-none mt-4">
    <div class="text-center p-3 rounded-3" style="background:#f8f9ff;border:1px solid #e8ecff">
        <p class="fw-semibold mb-2" style="font-size:.9rem">Love Free.ai? Tell your friends!</p>
        <div class="d-flex gap-2 justify-content-center">
            <a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Ffree.ai%2Fstartup%2F&amp;text=Check%20out%20this%20free%20AI%20tool%20on%20Free.ai!" class="btn btn-sm rounded-circle" style="background:#1DA1F2;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center" id="share-twitter" title="Share on X">
                <i class="bi bi-twitter-x"></i>
            </a>
            <a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Ffree.ai%2Fstartup%2F" class="btn btn-sm rounded-circle" style="background:#1877F2;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center" id="share-facebook" title="Share on Facebook">
                <i class="bi bi-facebook"></i>
            </a>
            <a href="https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Ffree.ai%2Fstartup%2F" class="btn btn-sm rounded-circle" style="background:#0A66C2;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center" id="share-linkedin" title="Share on LinkedIn">
                <i class="bi bi-linkedin"></i>
            </a>
            <a href="https://reddit.com/submit?url=https%3A%2F%2Ffree.ai%2Fstartup%2F&amp;title=Check%20out%20this%20free%20AI%20tool%20on%20Free.ai!" class="btn btn-sm rounded-circle" style="background:#FF4500;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center" id="share-reddit" title="Share on Reddit">
                <i class="bi bi-reddit"></i>
            </a>
            <a href="https://wa.me/?text=Check%20out%20this%20free%20AI%20tool%20on%20Free.ai! https%3A%2F%2Ffree.ai%2Fstartup%2F" class="btn btn-sm rounded-circle" style="background:#25D366;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center" id="share-whatsapp" title="Share on WhatsApp">
                <i class="bi bi-whatsapp"></i>
            </a>
        </div>
    </div>
</div>
<script>
(function(){
    var url = encodeURIComponent(window.location.href);
    var text = encodeURIComponent('Check out this free AI tool on Free.ai!');
    var s = document.getElementById('share-twitter');
    if(s) s.href = 'https://twitter.com/intent/tweet?url='+url+'&text='+text;
    s = document.getElementById('share-facebook');
    if(s) s.href = 'https://www.facebook.com/sharer/sharer.php?u='+url;
    s = document.getElementById('share-linkedin');
    if(s) s.href = 'https://www.linkedin.com/sharing/share-offsite/?url='+url;
    s = document.getElementById('share-reddit');
    if(s) s.href = 'https://reddit.com/submit?url='+url+'&title='+text;
    s = document.getElementById('share-whatsapp');
    if(s) s.href = 'https://wa.me/?text='+text+' '+url;
})();
</script>


    
    
    <div class="py-4 text-center border-top" style="background:#fafbff">
        <p class="text-muted mb-2 small">Rate this page</p>
        <div class="d-inline-flex gap-1" id="page-rating">
            <button class="btn btn-link text-decoration-none p-0 page-star" data-r="1" style="font-size:1.3rem;color:#ddd"><i class="bi bi-star-fill"></i></button>
            <button class="btn btn-link text-decoration-none p-0 page-star" data-r="2" style="font-size:1.3rem;color:#ddd"><i class="bi bi-star-fill"></i></button>
            <button class="btn btn-link text-decoration-none p-0 page-star" data-r="3" style="font-size:1.3rem;color:#ddd"><i class="bi bi-star-fill"></i></button>
            <button class="btn btn-link text-decoration-none p-0 page-star" data-r="4" style="font-size:1.3rem;color:#ddd"><i class="bi bi-star-fill"></i></button>
            <button class="btn btn-link text-decoration-none p-0 page-star" data-r="5" style="font-size:1.3rem;color:#ddd"><i class="bi bi-star-fill"></i></button>
        </div>
        <p class="text-muted small mt-1" id="page-rating-status"></p>
    </div>
    <script>
    (function(){
        var rated=false, sel=0, starsList=document.querySelectorAll('.page-star'), stars=[].slice.call(starsList), st=document.getElementById('page-rating-status');
        var page = 'startups' || location.pathname;

        // Half-star display: e.g., 4.3 → stars 1-4 full gold, star 5 partially
        function setStars(avg){
            stars.forEach(function(b, i){
                var n = i + 1;
                if(avg >= n) {
                    b.style.color = '#fbbf24';
                    b.querySelector('i').className = 'bi bi-star-fill';
                } else if(avg >= n - 0.5) {
                    b.style.color = '#fbbf24';
                    b.querySelector('i').className = 'bi bi-star-half';
                } else {
                    b.style.color = '#ddd';
                    b.querySelector('i').className = 'bi bi-star-fill';
                }
            });
        }
        function setFull(n){ stars.forEach(function(b,i){ b.style.color=i<n?'#fbbf24':'#ddd'; b.querySelector('i').className='bi bi-star-fill'; }); }

        function showStatus(avg, count, yours){
            if(!st) return;
            var html = '';
            // Only advertise the aggregate when it's actually social proof.
            // The sweep on 2026-07-07 found 2.3-3.7/5 aggregates rendered on
            // the homepage, /pricing/ and top tool pages - anti-trust right
            // at the buy decision. We keep collecting votes either way.
            if(avg >= 4.2 && count >= 5) html += '<span style="color:#fbbf24">★</span> ' + avg + '/5 from ' + count + ' ' + (count!==1 ? 'ratings' : 'rating');
            if(yours > 0) html += (html?' · ':'') + 'Your vote: ' + yours;
            st.innerHTML = html;
        }

        // Load current aggregate + user's existing vote
        fetch('/api/v1/rate-page/?tool='+encodeURIComponent(page))
            .then(function(r){return r.json()}).then(function(d){
                if(d.avg >= 4.2 && d.count >= 5) setStars(d.avg);
                if(d.user_rating > 0){ sel = d.user_rating; rated = true; }
                showStatus(d.avg, d.count, d.user_rating);
            }).catch(function(){});

        stars.forEach(function(b){
            b.addEventListener('click',function(){
                sel=parseInt(this.dataset.r); rated=true; setFull(sel);
                fetch('/api/v1/rate-page/',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({tool:page,rating:sel})})
                .then(function(r){return r.json()}).then(function(d){
                    if(d.avg) showStatus(d.avg, d.count, sel);
                    if(st) st.style.color='#16A34A';
                });
            });
            b.addEventListener('mouseenter',function(){if(!rated)setFull(parseInt(this.dataset.r))});
        });
        var c=document.getElementById('page-rating');
        if(c)c.addEventListener('mouseleave',function(){setFull(sel)});
    })();
    </script>
    

    
    <footer class="bg-dark text-light py-5 mt-0">
        <div class="container">
            
            <div class="d-flex justify-content-between align-items-start mb-4 flex-wrap gap-3">
                <div>
                    <a href="/" class="text-decoration-none" style="font-size:1.5rem;font-weight:800">
                        <span style="color:#16A34A">Free</span><span class="text-light">.ai</span>
                    </a>
                    <p class="text-secondary small mt-1 mb-0">Every AI tool. Completely free.<br>400+ tools · 346+ models · 100+ languages<br><a href="/models/" class="text-decoration-none" style="color:#16A34A;font-weight:600">All models. One subscription. →</a></p>
                    
                    <a href="https://play.google.com/store/apps/details?id=free.ai" rel="noopener" class="d-inline-block mt-2">
                        <img src="/static/img/google-play-badge.png" alt="Get it on Google Play" height="40" loading="lazy" style="height:40px;width:auto">
                    </a>
                </div>
                <div style="min-width:250px">
                    <p class="text-light small fw-semibold mb-1">Newsletter</p>
                    <form id="newsletter-form" class="d-flex gap-1" method="POST">
                        <input type="hidden" name="csrfmiddlewaretoken" value="PIaJncyXFmTB9EZo6pDiCV7oQvx3hLYto6oEaBQpU0Tuj9Zfw9AhNHHrjtwCePzW">
                        <input type="email" class="form-control form-control-sm" placeholder="your@email.com" required="" style="font-size:.75rem">
                        <button type="submit" class="btn btn-primary btn-sm" style="font-size:.75rem">Join</button>
                    </form>
                </div>
            </div>
            <div class="row g-4">
                <div class="col-lg-2 col-md-4 col-6">
                    <h6 class="fw-bold mb-3" style="font-size:.8rem">Tools</h6>
                    <ul class="list-unstyled" style="font-size:.78rem">
                        <li class="mb-1"><a href="/chat/" class="text-light text-decoration-none">AI Chat</a></li>
                        <li class="mb-1"><a href="/image/" class="text-light text-decoration-none">Image Generator</a></li>
                        <li class="mb-1"><a href="/video/" class="text-light text-decoration-none">Video Generator</a></li>
                        <li class="mb-1"><a href="/text-to-speech/" class="text-light text-decoration-none">Text to Speech</a></li>
                        <li class="mb-1"><a href="/voice/" class="text-light text-decoration-none">AI Voice Generator</a></li>
                        <li class="mb-1"><a href="/write/" class="text-light text-decoration-none">AI Writer</a></li>
                        <li class="mb-1"><a href="/code/" class="text-light text-decoration-none">Code Generator</a></li>
                        <li class="mb-1"><a href="/music/" class="text-light text-decoration-none">Music Generator</a></li>
                        <li class="mb-1"><a href="/transcribe/" class="text-light text-decoration-none">Transcription</a></li>
                        <li class="mb-1"><a href="/translate/" class="text-light text-decoration-none">Translator</a></li>
                        <li class="mb-1"><a href="/text/humanizer/" class="text-light text-decoration-none">AI Humanizer</a></li>
                        <li class="mb-1"><a href="/generator/" class="text-light text-decoration-none">AI Generator</a></li>
                        <li class="mb-1"><a href="/tools/" class="text-light text-decoration-none fw-semibold">All 400+ →</a></li>
                    </ul>
                </div>
                <div class="col-lg-2 col-md-4 col-6">
                    <h6 class="fw-bold mb-3" style="font-size:.8rem">Explore</h6>
                    <ul class="list-unstyled" style="font-size:.78rem">
                        
                        
                        
                        <li class="mb-1"><a href="/models/" class="text-light text-decoration-none">AI Models (346+)</a></li>
                        <li class="mb-1"><a href="/voices/" class="text-light text-decoration-none">Voice Catalog</a></li>
                        
                        
                        <li class="mb-1"><a href="/batch/" class="text-light text-decoration-none">Batch Processing</a></li>
                        <li class="mb-1"><a href="/scheduled/" class="text-light text-decoration-none">Scheduled Tasks</a></li>
                        <li class="mb-1"><a href="/tasks/" class="text-light text-decoration-none">Cloud Code Tasks</a></li>
                    </ul>
                </div>
                <div class="col-lg-2 col-md-4 col-6">
                    <h6 class="fw-bold mb-3" style="font-size:.8rem">Products</h6>
                    <ul class="list-unstyled" style="font-size:.78rem">
                        <li class="mb-1"><a href="/platform/" class="text-light text-decoration-none">Platform API</a></li>
                        <li class="mb-1"><a href="/api/" class="text-light text-decoration-none">API</a></li>
                        <li class="mb-1"><a href="/hosting/" class="text-light text-decoration-none">AI Hosting</a></li>
                        <li class="mb-1"><a href="/gpu/" class="text-light text-decoration-none">GPU Access</a></li>
                        <li class="mb-1"><a href="/coder/" class="text-light text-decoration-none">Free.ai Coder</a></li>
                        <li class="mb-1"><a href="https://github.com/freeaigit/free-code" target="_blank" rel="noopener" class="text-light text-decoration-none"><i class="bi bi-github me-1"></i>GitHub</a></li>
                        <li class="mb-1"><a href="/enterprise/" class="text-light text-decoration-none">Enterprise</a></li>
                        <li class="mb-1"><a href="/agents/" class="text-light text-decoration-none">AI Agents</a></li>
                        <li class="mb-1"><a href="/workflows/" class="text-light text-decoration-none">Workflows</a></li>
                        <li class="mb-1"><a href="/integrations/" class="text-light text-decoration-none">Integrations</a></li>
                        <li class="mb-1"><a href="/chrome-extension/" class="text-light text-decoration-none">Chrome Extension</a></li>
                        <li class="mb-1"><a href="/widget/" class="text-light text-decoration-none">Widget</a></li>
                    </ul>
                </div>
                <div class="col-lg-2 col-md-4 col-6">
                    <h6 class="fw-bold mb-3" style="font-size:.8rem">Programs</h6>
                    <ul class="list-unstyled" style="font-size:.78rem">
                        <li class="mb-1"><a href="/contribute/" class="text-light text-decoration-none">Contribute</a></li>
                        <li class="mb-1"><a href="/edu/" class="text-light text-decoration-none">Education</a></li>
                        <li class="mb-1"><a href="/nonprofit/" class="text-light text-decoration-none">Nonprofit</a></li>
                        <li class="mb-1"><a href="/open-source/" class="text-light text-decoration-none">Open Source</a></li>
                        <li class="mb-1"><a href="/startup/" class="text-light text-decoration-none">Startups</a></li>
                        <li class="mb-1"><a href="/learn/" class="text-light text-decoration-none">Learn AI</a></li>
                        
                    </ul>
                </div>
                <div class="col-lg-2 col-md-4 col-6">
                    <h6 class="fw-bold mb-3" style="font-size:.8rem">Company</h6>
                    <ul class="list-unstyled" style="font-size:.78rem">
                        <li class="mb-1"><a href="/about/" class="text-light text-decoration-none">About</a></li>
                        <li class="mb-1"><a href="/host/" class="text-light text-decoration-none">AI Hosting</a></li>
                        <li class="mb-1"><a href="/domains/" class="text-light text-decoration-none">Domains</a></li>
                        <li class="mb-1"><a href="/pricing/" class="text-light text-decoration-none">Pricing</a></li>
                        <li class="mb-1"><a href="/for-teams/" class="text-light text-decoration-none">AI Tools for Teams</a></li>
                        <li class="mb-1"><a href="/contact/" class="text-light text-decoration-none">Contact</a></li>
                        <li class="mb-1"><a href="/security/" class="text-light text-decoration-none">Security</a></li>
                        <li class="mb-1"><a href="/changelog/" class="text-light text-decoration-none">Changelog</a></li>
                        <li class="mb-1"><a href="/roadmap/" class="text-light text-decoration-none">Roadmap</a></li>
                        <li class="mb-1"><a href="/status/" class="text-light text-decoration-none">Status</a></li>
                        <li class="mb-1"><a href="/privacy/" class="text-light text-decoration-none">Privacy</a></li>
                        <li class="mb-1"><a href="/terms/" class="text-light text-decoration-none">Terms</a></li>
                    </ul>
                </div>
            </div>
            <hr class="my-4 border-secondary">
            <div class="d-flex justify-content-between align-items-center flex-wrap gap-2">
                <p class="text-secondary small mb-0"><a href="/" class="text-secondary text-decoration-none">© 2026 Free.ai</a>. All rights reserved. / <a href="https://muddyholdings.net" target="_blank" rel="noopener" class="text-secondary text-decoration-none">Muddy Holdings LLC</a></p>
                <div class="d-flex gap-3">
                    <a href="https://github.com/freeaigit" target="_blank" rel="noopener" class="text-secondary" title="GitHub"><i class="bi bi-github" style="font-size:1.1rem"></i></a>
                    <a href="https://www.npmjs.com/package/freeai-code" target="_blank" rel="noopener" class="text-secondary" title="npm"><i class="bi bi-box-seam" style="font-size:1.1rem"></i></a>
                    <a href="https://pypi.org/project/freeai-code/" target="_blank" rel="noopener" class="text-secondary" title="PyPI"><i class="bi bi-filetype-py" style="font-size:1.1rem"></i></a>
                </div>
            </div>
        </div>
    </footer>

    
    <div class="modal fade" id="ratelimit" tabindex="-1">
        <div class="modal-dialog modal-dialog-centered">
            <div class="modal-content" style="border:2px solid #16A34A">
                <div class="modal-body text-center py-4 px-4">
                    <div class="mb-3">
                        <span style="font-size:3rem">⚡</span>
                    </div>
                    
                    <h4 class="fw-bold mb-2">Want more?</h4>
                    <p class="text-muted mb-3">Sign up free for 30,000 tokens every day. No credit card needed.</p>
                    
                    <form id="rl-signup-form" method="POST">
                        <input type="hidden" id="rl-signup-token" value="1786492214:7zhPUAh8KTE:e148a15ec184a3a83d34e726">
                        <div class="input-group mb-2">
                            <input type="email" class="form-control" id="rl-capture-email" placeholder="your@email.com" required="">
                            <button type="submit" class="btn btn-primary px-3">Get 30K/day</button>
                        </div>
                    </form>
                    <p class="text-muted mb-3" style="font-size:.72rem">No password needed - we email you a sign-in link. <a href="/signup/" style="color:#16A34A">Prefer Google or Microsoft? →</a></p>
                    <a href="/pricing/" class="btn btn-link text-muted small mb-1" style="font-size:.75rem;text-decoration:none">See all plans →</a>
                    <button type="button" class="btn btn-link text-muted small" data-bs-dismiss="modal" style="font-size:.7rem;text-decoration:none">Wait for free reset (<span id="reset-timer">...</span>)</button>
                    
                </div>
            </div>
        </div>
    </div>

    

    
    <script src="/static/vendor/bootstrap/js/bootstrap.bundle.min.js?v=1.0.1786492124"></script>

    
    <script async="" data-id="101503413" src="/f08a0c545d7e2.js"></script>

    
    <script>
    window.FREE = window.FREE || {};
    window.FREE.gpuApiUrl = 'https://api.free.ai';
    window.FREE.mediaGpuUrl = 'https://media.free.ai';
    window.FREE.inferenceGpuUrl = 'https://gpu4.free.ai';
    window.FREE.csrfToken = 'PIaJncyXFmTB9EZo6pDiCV7oQvx3hLYto6oEaBQpU0Tuj9Zfw9AhNHHrjtwCePzW';
    window.FREE.isAuth = false;
    window.FREE.page = 'startups';
    window.FREE.userLang = 'en';
    window.FREE.langName = 'English';
    
    window.FREE.capabilities = {"bg-removal": {"label": "Model", "default": "free", "free": [{"model_id": "rmbg", "name": "RMBG (free, fast)", "cost": 1000, "desc": "Fast, default \u2014 clean silhouettes / products"}, {"model_id": "birefnet", "name": "BiRefNet (free, sharp)", "cost": 1000, "desc": "Sharper hair / fur / fine edges"}], "premium": [], "endpoint_free": "/v1/image/remove-bg/", "endpoint_premium": "/v1/image/edit/", "extra_form_fields": {"operation": "remove_bg"}}, "depth-map": {"label": "Depth model", "default": "free", "free": [{"model_id": "marigold-depth", "name": "Marigold (free)", "cost": 1500, "desc": "Sharp, OpenRAIL++-M, ETH Zurich"}], "premium": [{"model_id": "premium/imageutils/depth", "name": "Fast Depth (premium)", "cost": 1500, "desc": "Quicker on huge inputs"}], "endpoint_free": "/v1/image/depth-map/", "endpoint_premium": "/v1/image/edit/", "extra_form_fields": {"operation": "depth"}}, "image-edit": {"label": "Edit model", "default": "free", "free": [{"model_id": "qwen-image-edit", "name": "Qwen-Image-Edit (free, direct)", "cost": 1000, "desc": "Apache 2.0, prompt-following \u2014 fastest free instruction edit"}, {"model_id": "step1x-edit", "name": "Step1X-Edit (free, reasoning)", "cost": 2000, "desc": "Apache 2.0, thinks + reflects \u2014 best on multi-step / abstract edits"}, {"model_id": "sdxl", "name": "SDXL img2img (free)", "cost": 1000, "desc": "Older fallback \u2014 looser instruction following"}], "premium": [{"model_id": "premium/flux-pro/kontext", "name": "FLUX Kontext Pro", "cost": 30000, "desc": "Strong instruction-following on complex prompts"}, {"model_id": "premium/bytedance/seedream/v4/edit", "name": "Seedream 4 Edit", "cost": 52000, "desc": "Best for text + logo preservation"}, {"model_id": "premium/nano-banana-pro/edit", "name": "Nano Banana Pro Edit", "cost": 112000, "desc": "Highest-quality general-purpose edit"}], "endpoint_free": "/v1/image/edit/", "endpoint_premium": "/v1/image/edit/", "extra_form_fields": {"operation": "img2img"}}, "vision-describe": {"label": "Vision model", "default": "free", "free": [{"model_id": "qwen25-vl", "name": "Qwen 2.5-VL (free)", "cost": 500, "desc": "Apache 2.0, strong general"}], "premium": [], "endpoint_free": "/v1/image/describe/", "endpoint_premium": "/v1/image/describe/"}, "controlnet": {"label": "Conditioning type", "default": "free", "free": [{"model_id": "canny", "name": "Canny edges", "cost": 1200, "desc": "Hard outlines from line drawings / photos"}, {"model_id": "pose", "name": "OpenPose", "cost": 1200, "desc": "Body skeleton \u2014 copy pose / gesture"}, {"model_id": "depth", "name": "Depth (MiDaS)", "cost": 1200, "desc": "Preserve 3D scene geometry"}, {"model_id": "scribble", "name": "Scribble / PiDi", "cost": 1200, "desc": "Loose doodles \u2192 finished art"}, {"model_id": "lineart", "name": "Lineart", "cost": 1200, "desc": "Clean ink-line / manga-style edges"}, {"model_id": "anime-lineart", "name": "Anime lineart", "cost": 1200, "desc": "Anime-tuned lineart extraction"}, {"model_id": "mlsd", "name": "MLSD (straight lines)", "cost": 1200, "desc": "Architecture / interior straight edges"}, {"model_id": "hed", "name": "HED soft edges", "cost": 1200, "desc": "Smooth holistic edge map"}, {"model_id": "soft-edge", "name": "Soft-edge", "cost": 1200, "desc": "PiDiNet soft-edge \u2014 gentler than canny"}, {"model_id": "normal", "name": "Normal map", "cost": 1200, "desc": "Surface orientation \u2014 preserve volume"}, {"model_id": "segmentation", "name": "Segmentation", "cost": 1200, "desc": "Region labels \u2014 restyle per object"}, {"model_id": "tile", "name": "Tile (variation)", "cost": 1200, "desc": "Refine / upscale / variation"}], "premium": [], "endpoint_free": "/v1/image/generate/", "endpoint_premium": "/v1/image/generate/", "extra_form_fields": {"model": "sdxl"}}, "talking-head": {"label": "Model", "default": "free", "free": [{"model_id": "sadtalker", "name": "SadTalker (free)", "cost": 6000, "desc": "MIT, ~10s/sec of video"}], "premium": [{"model_id": "premium/sync-labs/lipsync", "name": "Lipsync (premium)", "cost": 20000, "desc": "Sharper mouth, faster"}], "endpoint_free": "/v1/video/talking-head/", "endpoint_premium": "/v1/video/lip-sync/"}};
    // Paid-CTA wall-anchor A/B arm (accounts/ab.py, server IP-hash). utils.js
    // PAID_CTA.aimHigh reads this - 'micro' for everyone while the experiment
    // flag is off.
    window.FREE.paidCtaArm = 'micro';
    
    
    window.FREE.isConfirmed = false;
    
    </script>
    
    

    
    <script src="/static/js/utils.js?v=1.0.1786492124"></script>
    
    <script src="/static/js/global-search.js?v=1.0.1786492124"></script>
    
    <script src="/static/js/voice-loader.js?v=1.0.1786492124"></script>

    <script>
    window.FREE.i18n = {
        error_generic: 'Something went wrong. Please try again.',
        error_connection: 'Connection error - please try again.',
        error_no_response: 'Sorry, I could not generate a response.',
        error_text_long: 'Text too long. Maximum',
        error_characters: 'characters.',
        error_upload_image: 'Please upload an image first.',
        error_upload_audio: 'Please upload an audio file.',
        error_upload_file: 'Please upload a file first.',
        error_enter_desc: 'Please enter a description.',
        error_enter_text: 'Please enter some text.',
        error_processing: 'Processing failed. Please try again.',
        error_image_gen: 'Failed to generate image. Please try again.',
        error_tts: 'Failed to generate speech. Please try again.',
        error_music: 'Music generation failed.',
        error_audio_sep: 'Audio separation failed.',
        error_face_swap: 'Please upload both a source photo and a target photo.',
        copied: 'Copied!',
        img_upscale_4k_cta: 'Upscale to 4K',
        
        img_model_nudge_title: 'Not quite matching your description?',
        img_model_nudge_body: 'The default model is fast but loose with details. These follow detailed prompts more closely:',
        img_model_nudge_flux: 'Try FLUX.1 \u002D free',
        img_model_nudge_premium: 'Try a Premium model',
        img_model_nudge_switched: 'Model switched \u002D hit Generate again to compare',
        audio_stems_cta: 'Split into Stems',
        
        upsell_do_more: 'Do more with this result',
        img_upscale_4k_cta_cost: 'Upscale to 4K \u002D {0} tokens',
        img_variations_cta_cost: '4 more variations \u002D {0} tokens',
        upsell_variations_ready: 'Variations ready',
        audio_stems_cta_cost: 'Split into Stems \u002D ~{0} tokens',
        video_retake_cta: 'Generate another take',
        video_retake_cta_cost: 'Generate another take \u002D {0} tokens',
        
        pack_low_only: 'Only',
        pack_low_tail: 'purchased tokens left.',
        pack_low_refill: 'Refill \u002D 200K for $5',
        pack_low_sub: 'or $5/mo \u002D 250K every month',
        
        firstgen_title: 'Your first creation is ready',
        firstgen_body: 'Made with your free daily tokens. Keep the momentum:',
        firstgen_body_left: '{0} of your free daily tokens left \u002D keep the momentum:',
        firstgen_cta_starter: 'Go unlimited \u002D 500K tokens/mo, no daily caps',
        firstgen_cta_micro: 'Keep creating \u002D 40K tokens for $1',
        firstgen_cta_once: 'or just this once \u002D 40K for $1',
        firstgen_confirm_hint: 'Free option: confirm your email to raise your daily pool to 30K tokens.',
        new_chat: 'New Chat',
        queue_running: 'Running on GPU…',
        queue_pos_priority: 'Position #{0} in priority queue…',
        queue_pos_normal: 'Position #{0} in queue…',
        queue_waiting: 'Waiting for a worker…',
        queue_upgrade_cta: 'Skip the line - priority from $1',
        queue_upgrade_hint: '- any purchase runs first',
        queue_wait_eta: '{0} wait',
        queue_upgrade_hint_wait: '- skip the {0} wait',
        queue_failed_generic: 'Generation failed. Please try again.',
        queue_failed_cta: 'Skip the line next time - priority from $1',
        queue_failed_hint: '- paid jobs are run first, so they do not wait for a free slot',
        queue_still_working: 'Still working - the result will be saved to your account history.',
        video_free_cap: 'Free videos are up to 3-second CogVideoX clips - Pro unlocks up to 8s, HunyuanVideo HD, and priority (skip the queue).',
        upgrade_to_pro: 'Upgrade to Pro →',
        processing: 'Processing your request...',
        result: 'Result',
        // Pool warning messages - surfaced from utils.js pool modal/toast
        pool_low_headline: 'Running low on daily tokens',
        pool_critical_headline: 'Almost out of daily tokens',
        pool_empty_headline: 'Daily token pool used up',
        pool_remaining_of: 'of',
        pool_daily_tokens_left: 'daily tokens left',
        pool_cta_signup: 'Sign up \u002D 30K/day',
        pool_cta_signup_long: 'Sign up free \u002D 30K/day',
        pool_cta_buy_short: 'Get 200K \u002D $5',
        pool_cta_buy_long: 'Get 200K tokens \u002D $5',
        pool_cta_sub_long: 'Get 250K tokens every month \u002D $5/mo',
        pool_cta_pack_alt: 'or a one\u002Dtime 200K pack for $5',
        pool_see_plans: 'See all plans',
        pool_see_pricing: 'See pricing',
        
        pool_cta_starter_short: '500K/mo, no caps',
        pool_cta_starter: '500K tokens/mo, no daily caps',
        pool_cta_buy_micro_alt: 'Or $1 once \u002D 40K',
        
        cap_headline: 'Daily free {0} limit reached',
        cap_lead: 'This is a per\u002Dtool limit, not your token balance. Your remaining daily tokens still work on every other tool, and this resets tomorrow.',
        cap_pill_left: '{0} {1} tokens left today',
        cap_pill_done: 'Daily {0} limit reached',
        cap_note: 'Free plan: {0} {1} tokens a day, separate from your token pool. Upgrade to remove the limit.',
        cap_label_image: 'image',
        cap_label_image_edit: 'image edit',
        cap_label_music: 'music',
        cap_label_video: 'video',
        img_one_failed: 'One image in this batch failed. Please try again.',
        // 429 / 402 inline CTAs rendered into the chat / coder transcript when
        // the daily pool is exhausted (429) or the model costs more than the
        // user can afford (402). Wired by static/js/coder.js error handler.
        // HTML allowed (anchor tags) - strings are inserted via innerHTML.
        coder_429_authed: 'Daily limit reached. \u003Ca href\u003D\u0022/checkout/?plan\u003Dtokens_small\u0022 style\u003D\u0022color:#16A34A\u003Bfont\u002Dweight:600\u0022\u003EBuy 200K tokens \u002D $5\u003C/a\u003E or \u003Ca href\u003D\u0022/pricing/\u0022 style\u003D\u0022color:#16A34A\u0022\u003Eview plans\u003C/a\u003E.',
        coder_429_anon: 'Daily tokens used up. \u003Ca href\u003D\u0022/signup/\u0022 style\u003D\u0022color:#16A34A\u003Bfont\u002Dweight:600\u0022\u003ESign up free \u002D 30K/day\u003C/a\u003E or \u003Ca href\u003D\u0022/pricing/\u0022 style\u003D\u0022color:#16A34A\u0022\u003Eview plans\u003C/a\u003E.',
        coder_402_prefix: 'Not enough tokens for',
        coder_402_topup: 'Top up',
        coder_402_or_pick_free: 'or pick a free model',
        // /coder/ paid-model block card - fires when user selects a paid model
        // without enough wallet credits. Rendered as a red inline card via
        // static/js/coder.js model-switch handler (line ~1373).
        coder_requires_purchased_tokens: 'requires purchased tokens.',
        coder_free_daily_only: 'Free daily tokens only work with free models (Qwen Coder, Mistral).',
        coder_get_tokens: 'Get Tokens',
        coder_signup_30k_free: 'Sign Up \u002D 30K/day Free',
        coder_use_free_model: 'Use Free Model',
        // coder.js reads these so its JS-built strings localize (placeholder
        // is also rendered server-side on the textarea, but coder.js re-sets it
        // on model-enable and must not clobber it back to English).
        coder_input_placeholder: 'Describe what you want to build, paste code to debug, or ask a question...',
        coder_no_files_loaded: 'No files loaded. Upload files or clone a repo.',
        coder_purchased_required_placeholder: 'Purchased tokens required for this model',
        coder_new_session: 'New session',
        coder_no_sessions: 'No sessions yet',
        coder_delete_session: 'Delete session',
        coder_copied: 'Copied!',
        coder_copy: 'Copy',
        coder_invalid_github_url: 'Please enter a valid GitHub URL',
        coder_cloning: 'Cloning...',
        coder_clone: 'Clone',
        coder_failed_to_clone: 'Failed to clone:',
        coder_no_pending_changes: 'No pending changes',
        coder_monaco_loading: 'Monaco editor still loading. Please try again in a moment.',
        coder_autodetecting: 'Auto\u002Ddetecting project type...',
        coder_detect_failed_cmd: 'Could not detect start command.',
        coder_detection_failed: 'Detection failed:',
        coder_stream_error: 'Stream error:',
        coder_no_files_download: 'No files to download. Upload or generate files first.',
        chat_stop_generation: 'Stop generation',
        chat_context_label: 'Context: ',
        chat_context_full: 'Context full \u002D old messages trimmed',
        chat_processing_tools: 'Processing \u002D searching the web or using tools...',
        chat_still_working: 'Still working \u002D complex requests take longer...',
        chat_no_messages_export: 'No messages to export.',
        chat_nothing_to_branch: 'Nothing to branch yet \u002D send a message first.',
        chat_could_not_branch: 'Could not branch:',
        chat_no_messages_share: 'No messages to share yet \u002D send a message first.',
        chat_share_failed: 'Failed to create share link.',
        chat_share_link_notice: 'Anyone with the link can read your conversation. Link expires in ',
        chat_close: 'Close',
        chat_running_on_gpu: 'Running on GPU…',
        // Premium-feature CTA shown under chat refusals for non-paid users.
        // Wording is intentionally neutral ("some features") so the upsell
        // doesn't read as "we serve explicit content for $5/mo" - both legal
        // and brand-wise, that framing was a non-starter. Free users see the
        // hint, paid users skip it (their plan presumably includes more
        // permissive premium models).
        premium_features_hint: 'Some of the features you are requesting are for paying customers only.',
        premium_features_cta: 'Upgrade →',
        pool_see_plans_link: 'see plans',
        pool_modal_msg_auth: 'You have used all your daily free tokens. Grab a token pack to keep going \u002D packs never expire.',
        pool_modal_msg_anon: 'You have used the free anonymous tokens for today. Sign up free to get 30,000 every day \u002D 12x more.',
        rl_autotopup_ok: 'Auto\u002Drefill is on \u002D you will never hit this wall again.',
        rl_autotopup_err: 'Could not save right now \u002D please try again.',
        pool_come_back_later: 'Not now',
        pool_resets_in: 'Resets in',
        pool_nudge_only: 'Only',
        pool_nudge_tail: 'daily tokens left.',
        // Cost-shortfall banner (utils.js showCostShortfallModal) - these were
        // never in the i18n bridge, so the banner rendered English on every
        // locale. Added 2026-07-07 with the tool-shaped offer rework.
        shortfall_head: 'Not enough tokens for ',
        shortfall_body_mid: ' tokens. You have ',
        shortfall_anon_tail: 'daily free tokens.',
        shortfall_authed_tail: 'tokens.',
        shortfall_cta_signup_v2: 'Sign up free \u002D 30,000 tokens every day',
        shortfall_cta_micro: 'Keep going \u002D $1 for',
        shortfall_cta_buy: 'Buy 200K tokens \u002D $5',
        
        shortfall_cta_starter: 'Go unlimited \u002D 500K/mo, no caps',
        shortfall_cta_micro_secondary: 'Or $1 once \u002D',
        shortfall_cta_small_secondary: 'Or $5 \u002D',
        shortfall_cta_switch_prefix: 'Use ',
        shortfall_cta_switch_suffix: ' (free) instead',
        shortfall_cta_pricing: 'See plans',
        shortfall_email_ph: 'you@email.com',
        shortfall_signup_page: 'Full sign\u002Dup',
        resume_prompt_ready: 'You are in \u002D your prompt is ready. Click Generate to make it.',
        resume_prompt_generating: 'You are in \u002D generating your result now…',
        shortfall_hint_anon_v2: 'A free account gets 30,000 tokens every day \u002D enough for this, free, daily. Packs from $1 if you want more.',
        shortfall_hint_pack_caps: 'Purchased tokens also remove the daily caps and never expire.',
        unit_videos: 'videos',
        unit_songs: 'songs',
        unit_images: 'images',
        unit_3d_models: '3D models',
        unit_generations: 'generations',
        tokens_word: 'tokens',
        nav_anon_free_today: 'free today',
        chat_free_today_label: 'free today',
        queued_view_result: 'View result',
        download: 'Download',
        queued_done_dashboard: 'Done \u002D the result is saved in \u003Ca href\u003D\u0022/account/?tab\u003Dhistory\u0022\u003Eyour dashboard\u003C/a\u003E.',
        // Generic UI labels surfaced from utils.js helpers (Enhance prompt, Before/After slider).
        enhance_prompt: 'Enhance prompt',
        enhance_prompt_title: 'Rewrite your prompt for richer results',
        enhancing: 'Enhancing...',
        before: 'Before',
        after: 'After',
        // Chat folder + rename prompts (from chat.js).
        chat_folder_name_prompt: 'Folder name',
        chat_folder_delete_confirm: 'Delete folder {name}? Its chats will move to Unfiled.',
        chat_new_title: 'New title',
        // Chat Projects (folder + shared instructions, from chat.js).
        chat_project_new_prompt: 'Project name',
        chat_project_delete_confirm: 'Delete project {name}? Its chats move to Unfiled and its instructions are removed.',
        chat_project_new_chat: 'New chat in this project',
        chat_project_edit_instr: 'Edit project instructions',
        chat_project_delete_title: 'Delete project (chats move to Unfiled)',
        chat_project_instr_desc: 'These instructions are added to every new chat you start in this project.',
        chat_project_instr_ph: 'e.g. You are helping me write a mystery novel. Keep a dark, terse tone.',
        chat_project_save: 'Save',
        chat_project_cancel: 'Cancel',
        // Work-chat server sync (from chat.js). Positional {0} slot — MT rule.
        chat_sync_limit_notice: 'Free accounts sync {0} chats across devices. Older chats stay on this device.',
        chat_sync_limit_cta: 'Upgrade for unlimited synced history',
        // Chat workspace-files panel (from chat.js). Positional {0}/{1} slots - MT rule.
        chat_files_title: 'Chat files',
        chat_files_quota_line: '{0} of {1} used',
        chat_files_empty: 'No files in this chat yet. Files you upload here are available to the AI in this chat.',
        chat_files_unsynced: 'Send a message first \u002D files attach to this chat once it syncs.',
        chat_files_upload: 'Upload file',
        chat_files_uploading: 'Uploading...',
        chat_files_download: 'Download',
        chat_files_delete: 'Delete',
        chat_files_delete_confirm: 'Delete {0}?',
        chat_files_read_only: 'This chat workspace is read\u002Donly right now.',
        chat_files_too_large: 'That file is too large for your plan.',
        chat_files_quota_cta: 'Upgrade for more space',
        chat_files_error: 'Could not load files. Try again.',
        // Coder SaaS scaffolder strings (from coder-saas.js).
        coder_saas_build: 'Build it',
        coder_saas_building: 'Building...',
        coder_saas_sandbox_starting: 'Spinning up sandbox...',
        coder_saas_app_live: 'Your app is live. Click below to open the preview in a new tab.',
        coder_saas_open_preview: 'Open preview',
        // coder-saas.js scaffolder step labels - round out the translation
        // sweep flagged earlier by the audit. All read via FREE.i18n with
        // English fallback inside the file.
        coder_saas_thinking: 'Thinking...',
        coder_saas_writing: 'Writing',
        coder_saas_chars: 'chars',
        coder_saas_running: 'Running',
        coder_saas_applying_patch: 'Applying patch',
        coder_saas_reading: 'Reading',
        coder_saas_listing: 'Listing files in',
        coder_saas_saved: 'Saved',
        coder_saas_failed: 'Failed',
        coder_saas_unknown_error: 'unknown error',
        coder_saas_done: 'Done.',
        coder_saas_approval_unexpected: 'Awaiting approval (unexpected \u002D scaffolder runs unattended).',
        coder_saas_agent_error: 'Agent error',
        coder_saas_sandbox_ready: 'Sandbox ready',
        coder_saas_scaffolding: 'Asking the agent to scaffold.',
        coder_saas_build_failed: 'Build failed.',
        // chat.js modal sweep - welcome tour, cheatsheet, prompts manager,
        // slash commands. Each key matches a T('key', 'fallback') call inside
        // chat.js. seed_translations scans this file so adding a new key here
        // is enough - no separate text_entries.json edit required.
        chat_prompt_insert: 'Insert',
        chat_prompts_empty: 'No saved prompts yet. Add one below.',
        chat_prompts_title: 'Saved Prompts',
        chat_prompts_desc: 'Reusable prompt templates. Insert via the slash menu (type /p) or the buttons below. Stored in this browser only.',
        chat_prompt_name_ph: 'Name (e.g. Friendly tone rewrite)',
        chat_prompt_body_ph: 'Prompt body \u002D clicking Insert pastes this into the chat input',
        chat_prompt_save: 'Save Prompt',
        chat_slash_image: 'Generate an image \u002D pre\u002Dfills Make an image of',
        chat_slash_music: 'Compose music \u002D pre\u002Dfills Compose music:',
        chat_slash_video: 'Generate video \u002D opens /video/generate/',
        chat_slash_search: 'Web search \u002D pre\u002Dfills Search the web for',
        chat_slash_translate: 'Translate \u002D pre\u002Dfills Translate to Spanish:',
        chat_slash_voice: 'Read text aloud \u002D pre\u002Dfills Read this aloud:',
        chat_slash_p: 'Insert a saved prompt template',
        chat_slash_prompts: 'Manage saved prompts',
        chat_slash_clear: 'Start a new chat',
        chat_slash_star: 'Star/unstar this chat',
        chat_slash_rename: 'Rename this chat',
        chat_slash_rename_prompt: 'New title',
        chat_slash_help: 'Show keyboard shortcuts',
        chat_cheatsheet_title: 'Keyboard shortcuts',
        chat_kbd_send: 'Send message',
        chat_kbd_newline: 'Newline in input',
        chat_kbd_recall: 'Recall previous message \u002D repeat to walk back',
        chat_kbd_recall_fwd: 'Walk forward / clear',
        chat_kbd_slash: 'Slash command palette',
        chat_kbd_cheatsheet: 'This cheatsheet',
        chat_kbd_esc: 'Close menu / modal',
        chat_kbd_search: 'Site\u002Dwide tool search',
        chat_features_h: 'Features you might not know about',
        chat_feat_memory_t: 'Memory',
        chat_feat_memory_d: 'the AI remembers facts across chats.',
        chat_feat_skills_t: 'Skills',
        chat_feat_skills_d: 'save instructions that auto\u002Dapply across chats.',
        chat_feat_folders_t: 'Folders',
        chat_feat_folders_d: 'group chats. Plus button in sidebar.',
        chat_feat_branch_t: 'Branch',
        chat_feat_branch_d: 'fork a chat at any user message.',
        chat_feat_star_t: 'Star',
        chat_feat_star_d: 'pin chats to top of sidebar.',
        chat_feat_edit_t: 'Edit',
        chat_feat_edit_d: 'pencil icon on user messages \u002D rewrites and regenerates.',
        chat_feat_stop_t: 'Stop',
        chat_feat_stop_d: 'Send button turns red mid\u002Dstream\u003B click to abort.',
        chat_feat_voice_t: 'Voice',
        chat_feat_voice_d: 'mic icon listens. Speak naturally\u003B auto\u002Dstops on silence.',
        chat_feat_search_t: 'Web search',
        chat_feat_search_d: 'type search and AI auto\u002Dcites sources.',
        chat_feat_image_t: 'Image gen inline',
        chat_feat_image_d: 'type make an image of and it appears in chat.',
        chat_feat_math_t: 'Math',
        chat_feat_math_d: 'wrap in dollar signs for inline, double dollars for display.',
        chat_feat_drafts_t: 'Drafts',
        chat_feat_drafts_d: 'in\u002Dprogress message saves per\u002Dchat across reloads.',
        chat_feat_tab_t: 'Tab notify',
        chat_feat_tab_d: 'page title flashes when AI finishes if you switched tabs.',
        chat_feat_artifacts_t: 'Artifacts',
        chat_feat_artifacts_d: 'long code/HTML responses auto\u002Dopen in Canvas side\u002Dpanel.',
        chat_feat_prompts_t: 'Saved prompts',
        chat_feat_prompts_d: 'type slash p to manage reusable prompt templates.',
        chat_feat_slash_t: 'Slash commands',
        chat_feat_slash_d: 'type slash at start of input for the command palette.',
        chat_take_tour: 'Take the welcome tour',
        chat_tour_h: 'Welcome to Free.ai Chat',
        chat_tour_sub: 'A quick tour of what makes this chat different.',
        chat_tour_models_t: '380+ models in one picker',
        chat_tour_models_d: 'Free Qwen / Mistral / DeepSeek plus the leading paid models \u002D same chat, switch any time.',
        chat_tour_inline_t: 'Generate inline',
        chat_tour_inline_d: 'Image, music, search, voice \u002D generated right in the chat.',
        chat_tour_memskills_t: 'Memory + Skills',
        chat_tour_memskills_d: 'Remembers facts you tell it. Save reusable instructions that auto\u002Dapply across chats.',
        chat_tour_branch_t: 'Branch + folders',
        chat_tour_branch_d: 'Fork any chat at any message. Group chats into folders. Star to pin to the top.',
        chat_tour_voice_t: 'Voice in + voice out',
        chat_tour_voice_d: 'Click the mic to speak. AI replies in voice if you want. Click mic mid\u002Dresponse to interrupt.',
        chat_tour_kbd_t: 'Power\u002Duser keys',
        chat_tour_kbd_d: 'Type slash for slash commands. Press question mark for the full cheatsheet. Up arrow recalls your last message.',
        chat_tour_freeforever: 'Free forever.',
        chat_tour_pricing: '30K tokens/day no signup. Even more for signed\u002Dup users. $1 \u003D 40K extra.',
        chat_tour_see_kbd: 'See all keyboard shortcuts →',
        chat_tour_close: 'Got it, let me chat',
    };
    window.onerror = function(msg, src, line, col, err) {
        navigator.sendBeacon('/api/accounts/log-error/', JSON.stringify({
            message: msg, source: src, lineno: line, colno: col,
            stack: (err && err.stack) || '', url: location.href
        }));
    };
    // Service Worker. Wrapped in try/catch because some sandboxed iframe
    // contexts (school filters, Yahoo Mail / Outlook preview frames) throw
    // SecurityError on the `navigator.serviceWorker` *access itself* - the
    // `'serviceWorker' in navigator` check is true in those contexts but
    // the property is unreadable. The catch swallows that silently.
    try {
        if ('serviceWorker' in navigator) {
            navigator.serviceWorker.register('/static/sw.js').catch(function(){});
        }
    } catch (_e) {}

    // Dark Mode Toggle
    (function(){
        var btn = document.getElementById('dark-mode-toggle');
        if (!btn) return;
        var icon = btn.querySelector('i');
        function updateIcon(){
            var isDark = document.documentElement.classList.contains('dark');
            icon.className = isDark ? 'bi bi-sun-fill' : 'bi bi-moon-fill';
        }
        updateIcon();
        btn.addEventListener('click', function(){
            var isDark = document.documentElement.classList.toggle('dark');
            localStorage.setItem('free_dark_mode', isDark ? 'true' : 'false');
            updateIcon();
        });
    })();

    // A/B test: signup CTA text
    // Signup CTA - just "Sign Up"
    (function(){
        var btn = document.getElementById('signup-cta');
        if (btn) btn.textContent = 'Sign Up' || 'Sign Up';
    })();
    </script>
    

    
    <script>
    (function() {
        var wrap = document.getElementById('chat-wrapper') || document.querySelector('.myai-layout');
        if (!wrap) return;
        function fixH() {
            var r = wrap.getBoundingClientRect();
            if (r.top > 0) wrap.style.height = (window.innerHeight - r.top) + 'px';
        }
        fixH();
        window.addEventListener('resize', fixH);
        window.addEventListener('load', fixH);
        setTimeout(fixH, 300);
    })();
    </script>



</body></html>