How can I make this swipe movement more responsive/improve the script?

It’s not as responsive on my phone as it looks in the video.

    // Physics
    [SerializeField] float forceAmount = 10f;
    [SerializeField] float swipeThreshold = 10f;
    Rigidbody2D rb;

    private Vector2 startPos;
    private Vector2 swipe;
    private bool forceApplied = false;

    // Audio
    [SerializeField] private AudioSource audioSource;
    [SerializeField] private AudioClip[] dashSfx;
    [SerializeField] private AudioClip wallHit, enemyHit;

    private void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }

    private void Update()
    {
        if (Input.touchCount > 0)
        {
            Touch touch = Input.GetTouch(0);
            if (touch.phase == TouchPhase.Began)
            {
                startPos = touch.position;
                forceApplied = false;
            }
            if (touch.phase == TouchPhase.Moved)
            {
                swipe = touch.position - startPos;
                if (!forceApplied && swipe.magnitude > swipeThreshold)
                {
                    rb.AddForce(swipe.normalized * forceAmount, ForceMode2D.Impulse);
                    audioSource.PlayOneShot(dashSfx[Random.Range(0, dashSfx.Length)], 1f);
                    forceApplied = true;
                }
            }
        }
    }

Force applied to mass causes acceleration.

Acceleration will change the speed. (integration)

Changes in speed will eventually effect position. (integration)

Rarely would you do this for swiping.

Swiping usually just sets position, ignoring speed and acceleration.

As kinematics reminds us:

Position is X

Speed is V = dX/dT (derivative of Position related to Time)

Acceleration is A = dV/dT