---
title: "Self Hosted Projects That Benefit from Public Ports"
description: "NeedPorts gives self-hosted projects behind CGNAT a stable public endpoint and dedicated forwarded ports for apps that need inbound reachability."
image: "https://needports.com/og-image.svg"
canonical: "https://needports.com/self-hosted-projects-public-ports.html"
html: "https://needports.com/self-hosted-projects-public-ports.html"
---
[Home](/) / [Guides](/guides.html) / Self Hosted Projects and Public PortsSelf Hosted Projects

# Self-hosted projects that often benefit from public ports


Not every self-hosted app needs to be exposed directly to the public internet. But many projects become more useful when they have stable inbound reachability. If CGNAT is the blocker, NeedPorts can provide the public endpoint and forwarded ports.

[View NeedPorts Plans](/?usecase=selfhost#order)[Read the self-hosting guide](/self-hosting-behind-cgnat.html)

## Important distinction


NeedPorts is a networking layer. It does not install or manage these projects for you. What it can do is solve the public reachability problem when your machine is behind CGNAT and normal port forwarding does not work.


### Media and personal cloud


Jellyfin, Plex, Nextcloud, and Immich are examples of self-hosted projects where public reachability can matter, depending on how you want to access them.


### Dev and code services


Gitea, Forgejo, code-server, and small self-hosted APIs often benefit from a stable public endpoint when they need remote access or webhook traffic.


### Remote admin and sync


SSH, Syncthing, Vaultwarden, Home Assistant, and other self-managed services may need reliable inbound reachability depending on your setup.


### Document and utility apps


Projects like Paperless-ngx and other utility services can benefit when you need to reach them directly from outside your local network.


## When public ports make sense


- You need direct remote access from outside your home or office.
- You need a stable public endpoint rather than a changing workaround.
- You run more than one service and a single forwarded VPN port is not enough.
- You want public reachability but your ISP uses CGNAT.


## When you may not need them


If a project is only used inside your own LAN, or you are already happy with a private overlay network like Tailscale for purely private access, public port forwarding may not be necessary. NeedPorts is most useful when the real need is a public endpoint.


## Related reading


If you want the broader context, read the self-hosting guide, the homelab guidance, and the CGNAT explainer.

[Read the self-hosting guide](/self-hosting-behind-cgnat.html)[Read the CGNAT guide](/cgnat-port-forwarding.html)[Back to Guides](/guides.html)

```json
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Self Hosted Projects That Benefit from Public Ports",
  "description": "Examples of self-hosted apps and services that often need stable inbound reachability behind CGNAT.",
  "author": {
    "@type": "Organization",
    "name": "NeedPorts",
    "@id": "https://needports.com/#organization",
    "url": "https://needports.com/"
  },
  "publisher": {
    "@type": "Organization",
    "name": "NeedPorts",
    "@id": "https://needports.com/#organization",
    "url": "https://needports.com/"
  },
  "mainEntityOfPage": "https://needports.com/self-hosted-projects-public-ports.html"
}
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://needports.com/"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Guides",
          "item": "https://needports.com/guides.html"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Self Hosted Projects That Benefit from Public Ports",
          "item": "https://needports.com/self-hosted-projects-public-ports.html"
        }
      ]
    }
  ]
}
```
