Recommended Autoscaling stretegy

I am using the following simplest HPA with keycloak 17 statefulset

apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: keycloak
spec:
  maxReplicas: 10
  minReplicas: 3
  scaleTargetRef:
    apiVersion: apps/v1
    kind: StatefulSet
    name: keycloak
  targetCPUUtilizationPercentage: 50

Requests and limits are as follows

        resources:
          requests:
            memory: "256Mi"
            cpu: "200m"
          limits:
            memory: "512Mi"
            cpu: "500m"

This HorizontalPodAutoscaler will maintain an average CPU utilization of 50% across all Pods.
I want to know which additional metrics/custom metrics should we consider while creating HPA? Perhaps we should have a standard HPA template documented somewhere e.g. at keycloak-quickstarts/kubernetes-examples at latest · keycloak/keycloak-quickstarts · GitHub

A relatively better HPA is from helm-charts/charts/keycloak at master · codecentric/helm-charts · GitHub

apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
  name: keycloak
spec:
  # The minimum and maximum number of replicas for the Keycloak StatefulSet
  minReplicas: 3
  maxReplicas: 10
  scaleTargetRef:
    apiVersion: apps/v1
    kind: StatefulSet
    name: keycloak
  # The metrics to use for scaling
  metrics:
  - type: Resource
    resource:
      name: cpu
      target:
        type: Utilization
        averageUtilization: 80
  # The scaling policy to use. This will scale up quickly but only scale down a single Pod per 5 minutes.
  # This is important because caches are usually only replicated to 2 Pods and if one of those Pods is terminated this will give the cluster time to recover.
  behavior:
    scaleDown:
      stabilizationWindowSeconds: 300
      policies:
      - type: Pods
        value: 1
        periodSeconds: 300