> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Optimizing your app's SEO & GEO

> Manage your app's search engine and AI search visibility, scan and fix issues directly from your dashboard.

SEO and GEO can feel overwhelming, but Base44 takes care of the technical foundation for you. The SEO & GEO page in your app dashboard lets you manage your app's visibility in search engines and AI-powered search platforms like ChatGPT and Gemini.

<Frame>
  <img src="https://mintcdn.com/base44/d4g5saVYYqbxz0VH/images/seo-scrore.png?fit=max&auto=format&n=d4g5saVYYqbxz0VH&q=85&s=5ed9cc56bb4cf70bf64a7b55b8475878" alt="Seo Scrore" width="1136" height="463" data-path="images/seo-scrore.png" />
</Frame>

The page has three tabs: **Setup checklist**, **Meta tags**, and **Advanced Settings**. Run a scan to get a score and a prioritized checklist of improvements, set custom meta tags for each page, and control advanced settings like indexing and structured data injection.

<Frame caption="Optimizing your app's SEO and GEO">
  <img alt="Optimizing your app's SEO and GEO" lightAlt="Optimizing your app's SEO and GEO" darkAlt="Optimizing your app's SEO and GEO" src="https://mintcdn.com/base44/mnl_MwHp1LUAM01w/images/seo-scrore.jpg?fit=max&auto=format&n=mnl_MwHp1LUAM01w&q=85&s=cb277033456ecd76cff4f1c1e003ee6d" className="dark:hidden" width="1460" height="830" data-path="images/seo-scrore.jpg" />

  <img alt="Optimizing your app's SEO and GEO" lightAlt="Optimizing your app's SEO and GEO" darkAlt="Optimizing your app's SEO and GEO" src="https://mintcdn.com/base44/mnl_MwHp1LUAM01w/images/seo-scrore-1.jpg?fit=max&auto=format&n=mnl_MwHp1LUAM01w&q=85&s=e17d27b643507c2b62888fdf313e857d" className="hidden dark:block" width="1460" height="830" data-path="images/seo-scrore-1.jpg" />
</Frame>

***

## Setup checklist

The **Setup checklist** tab is your main SEO control panel. Run a scan to see how your app scores, fix the issues it finds, and manage the SEO files and features Base44 generates for you.

### Running a scan

The SEO & GEO scan checks your app against a full list of SEO and GEO criteria and gives you a prioritized checklist of issues to fix. Your score reflects how well your app is set up for search engines and AI-powered search platforms.

<Warning>
  Your app must be published before search engines and AI tools can reach it. If your app has never been published, your score will be capped. Click **Publish** in your app editor before running a scan.
</Warning>

**To run a scan:**

1. Go to your app's dashboard.
2. Click **Growth** in the left menu.
3. Click **SEO & GEO**.
4. Click **Run Scan**.

<Frame caption="Running an SEO and GEO scan on your app">
  <img alt="Running an SEO and GEO scan on your app" lightAlt="Running an SEO and GEO scan on your app" darkAlt="Running an SEO and GEO scan on your app" src="https://mintcdn.com/base44/NNs_JNAkOeWUPDVq/images/Run-Scan.jpg?fit=max&auto=format&n=NNs_JNAkOeWUPDVq&q=85&s=733019e7d37afac89d85ce51e451abeb" className="dark:hidden" width="1458" height="564" data-path="images/Run-Scan.jpg" />

  <img alt="Running an SEO and GEO scan on your app" lightAlt="Running an SEO and GEO scan on your app" darkAlt="Running an SEO and GEO scan on your app" src="https://mintcdn.com/base44/NNs_JNAkOeWUPDVq/images/Run-Scan-1.jpg?fit=max&auto=format&n=NNs_JNAkOeWUPDVq&q=85&s=baa060f91ef9bd68ef1f1c6ac1d6b40a" className="hidden dark:block" width="1458" height="564" data-path="images/Run-Scan-1.jpg" />
</Frame>

After the scan, you see an **SEO Score** as a percentage with a label (such as "Moderate" or "Good") and an **SEO Checklist** with all the items found. Use the filters at the top of the checklist to focus on what matters most:

* **All:** Every item in the checklist.
* **Urgent:** Issues that are directly hurting your visibility and should be fixed first.
* **Recommended:** Improvements that can boost your score but are not blocking your current performance.
* **Done:** Checks your app has already passed.

Click any item in the checklist to expand it and see a description and the available action.

### Fixing issues

After running a scan, you can fix issues one at a time or send everything to the AI chat at once.

<Frame caption="Fixing issues in the SEO and GEO checklist">
  <img alt="Fixing issues in the SEO and GEO checklist" lightAlt="Fixing issues in the SEO and GEO checklist" darkAlt="Fixing issues in the SEO and GEO checklist" src="https://mintcdn.com/base44/WtYlMVZR2wUr1g6t/images/fix-issues.jpg?fit=max&auto=format&n=WtYlMVZR2wUr1g6t&q=85&s=c1c3dac8376ff106ba252bc8cabcea30" className="dark:hidden" width="1455" height="904" data-path="images/fix-issues.jpg" />

  <img alt="Fixing issues in the SEO and GEO checklist" lightAlt="Fixing issues in the SEO and GEO checklist" darkAlt="Fixing issues in the SEO and GEO checklist" src="https://mintcdn.com/base44/WtYlMVZR2wUr1g6t/images/fix-issues-1.jpg?fit=max&auto=format&n=WtYlMVZR2wUr1g6t&q=85&s=e96af4fc3a70d8fcf8de6acfa44696cc" className="hidden dark:block" width="1455" height="904" data-path="images/fix-issues-1.jpg" />
</Frame>

<Tip>
  Once the changes are made, click **Scan again** to see your updated score.
</Tip>

<AccordionGroup>
  <Accordion title="Fixing all issues">
    The **Fix with AI** button sends a prompt to the AI chat composer with all the AI-fixable items. You need to send the prompt for the AI to apply the changes. If no AI-fixable items remain, the button shows "No AI fixes available". Use the individual fix buttons on each item instead.

    **To fix all issues:**

    1. After running a scan, click **Fix with AI** in the SEO Checklist section.
    2. Send the prompt in the AI chat.
  </Accordion>

  <Accordion title="Fixing an individual issue">
    Each item in the checklist has an action button when expanded. Some actions apply the fix automatically without the AI chat, for example **Auto-generate breadcrumbs**, **Auto-generate brand info**, or **Improve description**. When the fix is applied, a confirmation appears inline. Other items show a **Fix with AI** button, which sends a targeted prompt to the AI chat composer for that specific fix.

    **To fix an individual issue:**

    1. After running a scan, click the item you want to fix to expand it.
    2. Click the action button:
       * If it's an auto-fix button (for example, **Auto-generate brand info** or **Improve description**), the fix is applied immediately.
       * If it's **Fix with AI**, send the prompt in the AI chat to apply the fix.
  </Accordion>
</AccordionGroup>

### AI assistant discovery

When someone uses an AI assistant such as ChatGPT, Gemini, or Perplexity to find or compare tools, those platforms scan the web and use structured signals to decide what to surface. Base44 generates an `llms.txt` file for your app, a lightweight file that gives AI crawlers a clear, structured summary of what your app does. This helps your app be understood and recommended by AI-powered search tools.

Click the **AI Assistant Discovery** toggle to turn this feature on or off.

<Frame caption="Enabling AI assistant discovery for your app">
  <img alt="Enabling AI assistant discovery for your app" lightAlt="Enabling AI assistant discovery for your app" darkAlt="Enabling AI assistant discovery for your app" src="https://mintcdn.com/base44/-IhA0I8UsOo-y6DN/images/ai-assistant-disc.jpg?fit=max&auto=format&n=-IhA0I8UsOo-y6DN&q=85&s=c8e03d09a74afbdd96e63075a58570f5" className="dark:hidden" width="1075" height="253" data-path="images/ai-assistant-disc.jpg" />

  <img alt="Enabling AI assistant discovery for your app" lightAlt="Enabling AI assistant discovery for your app" darkAlt="Enabling AI assistant discovery for your app" src="https://mintcdn.com/base44/-IhA0I8UsOo-y6DN/images/ai-assistant-disc-1.jpg?fit=max&auto=format&n=-IhA0I8UsOo-y6DN&q=85&s=a512a48230eeb3abf29353079df3ab4e" className="hidden dark:block" width="1075" height="253" data-path="images/ai-assistant-disc-1.jpg" />
</Frame>

### Checklist settings

The **Setup checklist** tab also includes toggles that control how Base44 generates key SEO files for your app.

<Frame caption="Setup checklist settings">
  <img src="https://mintcdn.com/base44/smEtsLd6e6rpEqdR/images/seo-checklist-settings.png?fit=max&auto=format&n=smEtsLd6e6rpEqdR&q=85&s=a051557ca2dd538b1dd5637a871421c3" alt="Setup checklist settings" width="1077" height="875" data-path="images/seo-checklist-settings.png" />
</Frame>

* **Generate robots.txt:** A `robots.txt` file tells search engines and AI crawlers which parts of your app they are allowed to visit. Click the **Generate robots.txt** toggle to enable or disable it:
  * **Enabled:** Base44 generates a `robots.txt` file for your app automatically.
  * **Disabled:** Base44 serves your deployed `public/robots.txt` if it exists, or returns a 404.
* **Generate sitemap.xml:** A `sitemap.xml` is a list of all the pages in your app. Search engines use it to find and index your pages faster. Click the **Generate sitemap.xml** toggle to enable or disable it:
  * **Enabled:** Base44 generates a `sitemap.xml` for your app automatically.
  * **Disabled:** Base44 serves your deployed `public/sitemap.xml` if it exists, or returns a 404.
* **Auto-generate per-page breadcrumbs:** Breadcrumbs are the trail of links shown on a page, such as Home > Products > Item. Search engines can display these in search results to help people understand where a page sits in your app. Click the **Auto-generate per-page breadcrumbs** toggle to enable or disable it:
  * **Enabled:** Base44 builds a fresh breadcrumb trail for each page automatically.
  * **Disabled:** Base44 serves your hand-crafted breadcrumb structure as-is. Use this if you have built your own breadcrumb schema and want it served verbatim.

***

## Meta tags

Meta tags are hidden snippets of text in your page code. Search engines read them to understand what each page is about. They control the title and description shown in Google search results, and what appears when someone shares a link to your app on social media. Setting clear, accurate meta tags for each page can improve your click-through rate in search results.

The **Meta tags** tab lets you set a custom title and description for each public page in your app.

<Note>
  Meta tags set here are enforced by the platform and take priority over any title tags in your app's code. If the title shown in search results or when sharing a link doesn't match what's in your code, check this tab. A saved meta tag here may be overriding it.
</Note>

**To edit a page's meta tags:**

1. Go to your app's dashboard.
2. Click **Growth** in the left menu.
3. Click **SEO & GEO**.
4. Click the **Meta tags** tab.
5. Click the **Edit** <Icon icon="pen" /> icon next to the page you want to update.
6. Update the **Title** and **Description** fields.
   * Title: aim for 10–60 characters.
   * Description: aim for up to 160 characters.
7. Click the **Save** icon to confirm.

<Note>
  If a page shows an orange warning, a previously saved override is active and taking priority over your App Overview values. Click the **Trash** icon next to that page to clear it and restore your current App Overview values.
</Note>

<Frame caption="Editing your app pages meta tags">
  <img src="https://mintcdn.com/base44/C4nbK_ZCrfgYqx5t/images/perpage-meta-tags.jpg?fit=max&auto=format&n=C4nbK_ZCrfgYqx5t&q=85&s=d167e7571ccee94346e23c727910c64d" alt="Editing your app pages meta tags" width="1045" height="406" data-path="images/perpage-meta-tags.jpg" />
</Frame>

***

## Advanced settings

The **Advanced Settings** tab gives you control over how Base44 injects meta tags and structured data into your app. You can also choose which pages search engines and AI tools can index.

<Frame caption="Advanced settings for SEO and GEO">
  <img src="https://mintcdn.com/base44/sjk2GcdgbwqbEXqE/images/advanced-seo-settings.png?fit=max&auto=format&n=sjk2GcdgbwqbEXqE&q=85&s=0642c0fe86e49cf6e5a61b44324ebdcb" alt="Advanced settings for SEO and GEO" width="1072" height="925" data-path="images/advanced-seo-settings.png" />
</Frame>

### Platform meta tag injection

Click the **Platform meta tag injection** toggle to enable or disable it:

* **Enabled:** Base44 automatically adds title, description, and canonical tags to your app. A canonical tag tells search engines which version of a page is the official one, which prevents duplicate content issues.
* **Disabled:** Base44 does not add these tags. Use this if you have set your own meta tags directly in your app's HTML.

### Platform structured data injection

Structured data is hidden code in your page that gives search engines extra context about your app, such as your brand details, page structure, and FAQs. Search engines use this to show richer results, like FAQ dropdowns or brand information, directly in search results.

Click the **Platform structured data injection** toggle to enable or disable it:

* **Enabled:** Base44 automatically adds structured data for your app's website, brand info, breadcrumbs, and FAQ pages.
* **Disabled:** Base44 does not add this data. Use this if you provide your own structured data.

### Per-page indexing

Indexing is how search engines read your pages and add them to their database so they can appear in search results. If a page is not indexed, it will not show up in search results or AI recommendations.

The **Per-page indexing** section lets you choose which pages are indexed. All pages are indexable by default.

To stop a page from being indexed, click its toggle to turn it off. Base44 removes the page from your sitemap and `llms.txt` file, and adds a `noindex` tag to it.

<Note>
  Pages that require a login are always excluded from search engine indexing, regardless of the per-page indexing settings.
</Note>

***

## FAQs

Click a question below to learn more.

<AccordionGroup>
  <Accordion title="Does running a scan use credits?">
    No. Running an SEO & GEO scan does not use any credits.
  </Accordion>

  <Accordion title="How often should I run the scan?">
    Run a scan whenever you make significant changes to your app, such as updating content, adding new pages, or changing your app's title or description. Regular scans help you catch new issues early.
  </Accordion>

  <Accordion title="What is GEO and why does it matter?">
    GEO stands for Generative Engine Optimization. It refers to how well your app is structured to appear in responses from AI-powered search tools like ChatGPT, Gemini, and Perplexity. As more people use these tools to find information, GEO is becoming as important as traditional SEO.
  </Accordion>

  <Accordion title="What is the difference between urgent and recommended issues?">
    Urgent issues are directly hurting your visibility and should be fixed as soon as possible. Recommended improvements can boost your score but are not blocking your current performance.
  </Accordion>

  <Accordion title="Does fixing all issues guarantee a perfect score?">
    Applying all fixes will resolve the flagged issues and improve your score, but some checks depend on your content and may require manual updates to reach a higher score.
  </Accordion>

  <Accordion title="Why is my score lower than expected?">
    Some issues have a much bigger impact on your score than others. If any of the following apply, your score will be capped regardless of other improvements:

    * **App not published:** Search engines cannot reach an unpublished app. Publish your app before running a scan.
    * **App requires a login:** If your app is login-gated, search engines cannot access any of your pages.
    * **No live homepage:** If your homepage is returning an error, search engines cannot crawl your app.
    * **No custom domain:** Apps on a Base44 subdomain are treated as staging or test sites by search engines. Connecting your own domain is the single biggest improvement you can make to your score.
  </Accordion>

  <Accordion title="Can I turn off SEO for my app?">
    Yes. SEO is enabled for your app by default. To turn it off, click the **Enable SEO for this app** toggle at the top right of the SEO & GEO page. When disabled, Base44 stops injecting meta tags, structured data, and generating SEO files like the sitemap and `llms.txt`. Your app remains publicly accessible to search engines, but without any platform SEO enhancements.
  </Accordion>

  <Accordion title="Can I edit meta tags for all my pages from here?">
    Yes. The **Meta tags** tab shows all your public pages. You can edit the title and description for each one directly from the SEO & GEO page.
  </Accordion>

  <Accordion title="Can I control which pages get scanned or indexed?">
    All public pages are scanned by default. Pages behind a login are excluded automatically. You can control which pages are indexed from the **Advanced Settings** tab using the **Per-page indexing** toggles.
  </Accordion>
</AccordionGroup>
