# How to redirect to a new URL using JavaScript

> Learn how to redirect to a new URL using JavaScript, setting location.href inside a setTimeout to send people to another page after a short delay.

Author: [Flavio Copes](https://flaviocopes.com/about/) | Published: 2022-07-11 | Topics: [JavaScript](https://flaviocopes.com/tags/js/) | Canonical: https://flaviocopes.com/javascript-redirect-to-url/

I wanted to solve this specific use case, track the number of people that subscribe to my newsletter as a "goal" in my analytics.

I'm moving away from Google Analytics where you can setup "funnels goals", meaning you visit page X, you visit page Y, that's a goal.

It's not possible in the new analytics I'm trying (Plausible) so I had to find a trick.

After you subscribe you land on a specific page where you can download some stuff. 

I can't say "the goal is to visit this page" because people might save it, bookmark, get back later.

So I did this, after subscribing you are sent to a temporary page and I put this [JavaScript](https://flaviocopes.com/javascript/) snippet on top:

```html
<script>
  setTimeout(() => location.href = "/page", 2000)
</script>
```

So people are redirected to `/page` after 2 seconds.

I also did add a `Redirecting you to the downloads in 2 seconds...` message with a `or click here` link people can click in case for some reason (JS disabled?) they are not redirected.
