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

# Troubleshooting Common Issues with the Newt Discord Bot

> Fixes for the most common Newt bot issues: missing commands, permissions errors, logging gaps, and features that aren't behaving as expected.

Most Newt issues come down to one of three things: a Discord client that hasn't caught up yet, a bot role sitting in the wrong place in the hierarchy, or a missing permission in a specific channel. Work through the accordion for your issue below — each one includes the most common cause and how to fix it.

<AccordionGroup>
  <Accordion title="A command doesn't appear in Discord">
    Fully quit and reopen Discord. The client caches the command list locally and doesn't always pick up changes on its own — this is a Discord behaviour, not a Newt one. A full restart clears the cache and forces a fresh fetch of the command list.

    On desktop, quitting from the system tray or dock (not just closing the window) is the reliable way to fully restart. On mobile, swipe the app away and reopen it.
  </Accordion>

  <Accordion title="Nothing happens when somebody joins">
    Welcome and goodbye messages are off until you configure them. Run `/welcome set` with your message to switch it on. If you've already set it up and it has stopped working, run `/welcome show` — it will tell you whether the feature is currently off and show you exactly what's stored, so you can spot if something was accidentally cleared.
  </Accordion>

  <Accordion title="A moderation command says my role is too low">
    The bot's own role must sit **above** the member you're trying to action in the role hierarchy. This is a Discord rule — no bot can action a member whose top role is at the same level or higher than the bot's role, regardless of what permissions it has.

    Fix it in **Server Settings → Roles**: drag the Newt bot role above the roles held by the members you want to moderate. You don't need to put it above every role, just above the highest role any member you want to action could have.
  </Accordion>

  <Accordion title="Deleted files aren't being kept">
    Run `/logging status` to check the current state of the media log. The most common causes are:

    * **Missing permission in the log channel** — Newt needs Send Messages and Attach Files in the channel you've pointed the media log at. Check the channel's permission overrides, not just the server-level permissions.
    * **File over 8MB** — Discord's upload limit means files above 8MB can't be reposted. The deletion is still logged with the filename and size; only the file itself is missing.
    * **Message posted before the bot last restarted** — Newt holds files in memory while waiting for a deletion event. If the bot restarted after the file was posted but before it was deleted, the copy was never made. The deletion is still logged, but the file won't be there.
  </Accordion>

  <Accordion title="The mod log says the deleter is unknown">
    There are two reasons this happens, and neither is a bug:

    1. **Newt is missing View Audit Log.** Without this permission, Newt can't check who deleted the message. Grant it to the bot's role in **Server Settings → Roles**.
    2. **The person deleted their own message.** Discord doesn't write an audit log entry when someone deletes their own message — it only logs deletions made by someone *other* than the message author. If someone deletes their own post, the deleter will always be unknown to every bot on your server.
  </Accordion>

  <Accordion title="/forcesurvey says there was nobody to remind">
    `/forcesurvey` looks for members who joined **exactly 8 days ago** — that's when the regular survey reminder fires. If Newt hasn't been in your server for 8 days yet, there are no members in that cohort and nobody to remind.

    To test the feature before 8 days have passed, use `days:0`. This sends the reminder to whoever joined today, letting you verify the survey channel and reminder are set up correctly without waiting.
  </Accordion>

  <Accordion title="A dashboard change hasn't taken effect">
    Give it a few seconds. Newt checks for dashboard changes every **10 seconds**, so there's a short delay between saving a change and the bot picking it up. If it's been longer than 30 seconds and the change still hasn't taken effect, try saving it again. If the problem persists, open a support ticket.
  </Accordion>

  <Accordion title="Autorole isn't giving roles">
    Run `/autorole list` — it shows your current list and flags a warning next to anything that isn't working.

    The most common cause is **role hierarchy**: Discord won't let any bot give out a role that sits above the bot's own role, regardless of permissions. Fix this by opening **Server Settings → Roles** and dragging the Newt bot role above every role you've added to the autorole list.

    Also confirm that autorole is switched on and wasn't accidentally paused with `/autorole off`. The list command will show the current state.
  </Accordion>

  <Accordion title="The account age gate kicked a real person">
    This is expected behaviour. The account age gate is designed to turn away accounts newer than the minimum age you set — and occasionally that catches a real person who registered their account recently.

    When someone is kicked by the gate, they receive a direct message telling them the minimum account age requirement and that they're welcome to return once their account is old enough. They aren't banned; they can rejoin as soon as they're eligible.

    If you want to let a specific person in immediately, you have two options:

    * **Temporarily disable the gate** — run `/automod minage 0` to switch it off, let them join, then set it back to your preferred value.
    * **Lower the minimum** — run `/automod minage <days>` with a smaller number if the current threshold is higher than you intended.
  </Accordion>

  <Accordion title="Sticky message stopped reappearing">
    Sticky messages work by deleting the old copy and reposting at the bottom of the channel whenever there's been a burst of activity. This requires the bot to have **Manage Messages** in that channel.

    Check the channel's permission overrides in **Edit Channel → Permissions**. If the channel's permissions were changed after the sticky was set — or if the bot's role was reorganised — Newt may have lost the Manage Messages override it needs. Restore that permission and the sticky will start working again.

    You can confirm the sticky is still configured by running `/sticky list` from that channel.
  </Accordion>
</AccordionGroup>

## Still stuck?

If none of the above resolved your issue, open a support ticket at [newt.bot/support](https://newt.bot/support). Log in with Discord, describe what happened, and pick the closest category. You'll get a reply as a direct message from the bot, and the full thread stays on the support page so you won't miss it even if your DMs are closed.
