Application.targetFrameRate not working

For some reason when I use Application.targetFrameRate = 60; my framerate is about 70-75.
And when I put Application.targetFrameRate = 30; its bout 33-35.

Why is the framerate higher than the target?

Edit: I made a fps display in the game, and that shows the “correct” framerate, it sometimes goes above like 61 or 62 but ig that’s normal.

here’s the code for the fps display:

using TMPro;
using UnityEngine;

public class FpsCount : MonoBehaviour
{
    public TextMeshProUGUI fpsDisplay;
    float displayTime = 1f;
    float time = 0;
    int frameCount;

    // Update is called once per frame
    void Update()
    {   
        time += Time.deltaTime;
        frameCount++;
        if(time >= displayTime) {
            fpsDisplay.text = frameCount.ToString() + " FPS";
            time -= displayTime;
            frameCount = 0;
        }
    }
}

you should let
time = 0
rather than
time -= displayTime, which makes “time” awalys not less than 0;