Add UK address autocomplete to any form
One script tag. One data attribute. Your users get instant address suggestions across 36 million UK properties — with UPRN, postcode, and coordinates auto-filled.
<!-- 1. Load the widget --> <script src="http://neo.homedata.co.uk/js/homedata-address.js"></script> <!-- 2. Add one attribute to your input --> <input type="text" data-homedata-address placeholder="Start typing an address…"> <!-- 3. Auto-fill companion fields (optional) --> <input type="hidden" data-homedata-uprn> <input type="text" data-homedata-postcode>
Live address search — powered by Homedata's address API.
Three steps. Five minutes.
No build tools. No framework requirements. Works on any site that has HTML.
Add the script tag
One line in your <head> or before </body>. No npm, no bundler.
Tag your input
Add data-homedata-address to any text input. The widget handles the rest.
Map your fields
Tag other inputs to auto-fill when an address is selected. UPRN, postcode, town — whatever your form needs.
<input data-homedata-town>
<input data-homedata-uprn>
Map any field on your form
The widget looks for data-homedata-* attributes within the same <form> and fills them automatically when a user picks an address. No JavaScript required on your end.
data-homedata-address
→
Full formatted address (trigger input)
data-homedata-uprn
→
12-digit Unique Property Reference Number
data-homedata-postcode
→
Postcode
data-homedata-town
→
Town / city
data-homedata-line1
→
Address line 1
data-homedata-line2
→
Address line 2
Custom JavaScript callback
Need more control? Listen for the selection event:
// Option 1: Global callback window.homedataOnSelect = function(result) { console.log(result.uprn); // "100023336956" console.log(result.address); // "10 Downing Street" console.log(result.postcode); // "SW1A 2AA" console.log(result.town); // "London" }; // Option 2: Event listener document.querySelector('[data-homedata-address]') .addEventListener('homedata:select', function(e) { const property = e.detail; // Do anything with the data });
CSS variables for theming
Match your brand — no CSS overrides needed:
:root { --hd-bg: #ffffff; --hd-border: #e5e7eb; --hd-radius: 8px; --hd-hover: #f3f4f6; --hd-text: #111827; --hd-font-size: 14px; }
Go beyond the address
Address search costs just 2 calls. When you need property data — bedrooms, EPC, floor area, property type, last sold price — retrieve the full record for 5 calls. A complete find-then-retrieve workflow is 7 calls. Nobody else returns this level of enrichment with an address lookup.
{
"address": "10 Downing Street",
"postcode": "SW1A 2AA",
"uprn": "100023336956"
}
// That's it. For everything else,
// you need a different API.
{
"address": "10 Downing Street",
"postcode": "SW1A 2AA",
"uprn": "100023336956",
"bedrooms": 4,
"property_type": "Terraced",
"epc_floor_area": 180,
"current_energy_efficiency": 55,
"last_sold_price": 0,
"last_sold_date": null,
"latitude": 51.5034,
"longitude": -0.1276
}
Free plan includes 100 enrichment calls/month. No credit card required.
Get your free API key →How we compare
Honest comparison. No asterisks.
getAddress.io shut down in October 2025
Following a Royal Mail intellectual property claim, getAddress.io posted a closure notice on their own homepage. If you were using getAddress, you need a replacement now. Homedata is a direct drop-in — same two-step Find + Retrieve pattern, same response shape, plus free enriched property data.
Read the migration guide — swap in under an hour →| Homedata | getAddress Closed | Loqate | Ideal Postcodes | |
|---|---|---|---|---|
| Service status | ✓ Live | ✗ Shut down Oct 2025 | ✓ Live | ✓ Live |
| Address autocomplete | Included in plan | From £8.99/mo | Per-lookup pricing | Per-lookup pricing |
| UPRN included | ✓ Always | ✗ Extra cost | Extra cost | ✓ Free with lookup |
| Property data on retrieve | ✓ Beds, EPC, floor area, property type | ✗ Address only | ✗ Address only | ✗ Address only |
| Embeddable widget | ✓ Zero dependencies | ✓ Had JS widget | ✓ Enterprise widget | ✓ jQuery plugin |
| Self-serve signup | ✓ Free tier, no CC | ✓ Was self-serve | ✗ Demo call required | ✓ PAYG from 4.5p |
| Public pricing | ✓ On the website | ✓ Was public | ✗ Hidden | ✓ On the website |
| UK coverage | 36M addresses | 36M addresses | 36M addresses | 36M addresses |
Build your embed code in 30 seconds
Pick which fields you want, preview the widget, and copy your snippet. Zero configuration beyond choosing what data your form needs.