Advice on deploying CRDs

Cluster information:

Kubernetes version: newest supported by Rancher
Cloud being used: variable
Installation method: Rancher
Host OS: variable
CNI and version: variable
CRI and version: variable

I’m wondering what the best approach for deploying a CRD would be in my situation.

I am deploying a Rancher Helm Chart more than once on a cluster. If a certain trigger is set, it needs a CRD for the feature to work.

How should I deploy the CRD?
If I deploy the CRD as part of the Helm Chart, will it do harm that the same CRD is deployed over and over again or does it not matter?
Should I deploy the CRD in a separate Chart, that only gets deployed once per cluster or should I just deploy it the 101 way per CLI, once?

What would be the most efficient or best way to deploy the CRD in this situation?

The CRD probably won’t change, as it only implements the IngressRouteTCP by Traefik.