# Adding a widget to your site > Show a live signup count, a referral leaderboard, a community milestone or a launch countdown on any site, with one line of HTML. Source: https://getlaunchlist.com/help/docs/widget/integrate-widget --- Not every embed is a form. Four widgets put live numbers from your waitlist on any page: social proof that updates itself. Widgets are on every plan, Free included: the widget editor, your Launch page and the embed on your own site. ## The four widgets **Live counter.** Your live signup total. The highest-converting thing you can put next to a signup form. **Leaderboard.** Your top referrers and their scores. Turns referring into a visible competition. Rows show the name your form collected, or a masked identifier when it collected none. **Milestone bar.** Progress toward a community goal, with what unlocks when you hit it. **Countdown.** Time until launch. It renders nothing until the project has a launch date, so set one in **Project settings → General** first. ## Adding one Open **Embed & API → Your website**, scroll to **Widgets**, and choose **Get code** on the one you want. It is one element plus the loader:  ```html
``` The loader goes in your `` **once**, no matter how many widgets and forms you have.  ## Configuring per widget Options travel as `data-*` attributes, so the same widget can read differently on two sites without any stored configuration: | Widget | Attributes | | ----------- | --------------------------------------- | | Counter | `data-label`: the line under the number | | Leaderboard | `data-title`: the card heading | | Milestone | `data-goal`, `data-reward` | | Countdown | `data-heading` | ## What a widget can and cannot see Widgets are **aggregate only**, and **no widget ever exposes an email address, a phone number, or any other contact detail**. That is enforced server-side, not by the widget choosing what to draw, which is why a widget is safe to put on a public page with nothing but your project handle in the markup. A counter shows a total. A leaderboard shows a rank, a label and a score. That label is the display name your own form collected; where it collected none, the row falls back to a masked identifier like `na•••`. So a leaderboard on a public page can show the names your signups gave you, which is usually the point of a leaderboard, but it is worth knowing before you embed one. A widget sliced to a cohort of fewer than ten people publishes no number at all, so an embed can never be used to reconstruct an individual out of a narrow slice. > [!TIP] Don't publish a number that sells against you > A counter reading "7 people have joined" costs you more than no counter does. There is no > auto-hide setting: the widget renders whatever the total is. Until the number helps you, leave the > `