Postscapes is an independent review site. We may earn money when you click on links on our site. Learn more.

Bluetooth Category Icon

2019 Buyers Guide

Bluetooth Smart Locks

In the market for a door lock that has Bluetooth connectivity for proximity locking and unlocking, setting access codes and other features?

Dive into our top picks and our comparison tables to find the best fit for your home or apartment.

August Smart Lock Pro 3rd GenAugust Smart Lock Pro 3rd Gen logo Bluetooth Door Lock 1 image
$193.89
AKASO Smart LockAKASO Smart Lock logo Bluetooth Door Lock 2 image
Price not available
Ultraloq UL3 BluetoothUltraloq UL3 Bluetooth logo Bluetooth Door Lock 3 image
$159.99
Schlage SenseSchlage Sense logo Bluetooth Door Lock 4 image
$173.77

How we chose the top Bluetooth Door Lock

100s Hours

Of research and hands on testing

Top Integrations

checked to see what works with what

50+

Real users reviews analyzed

Bluetooth Overview
Category Bluetooth

Bluetooth smart locks are some of the most popular locks in the market due to their integration with your smart phone and range perfect for a single home or apartment.

Bluetooth Lock Pros

  • Already enabled on your smart phone with no additional hubs needed.
  • Has an OK range of around 50 feet (Bluetooth 5 will have up to 4x the range) but this is all dependent on your specific house, etc.
  • If you are concerned about security the shorter range can be a positive in that someone needs to be physically close to your house for any network snooping/access.

Bluetooth Lock Cons:

  • You will not be able to remotely monitor and control your lock from long distances without an add-on accessory. A Wi-fi or Z-Wave enabled lock will be a better fit for you if you want this feature.
  • Range can be a problem in certain houses.

What is the best Bluetooth enabled smart lock to buy?

The smart lock market has a large range of options and configurations to choose from ranging from door fit and installation to making sure it works well with other smart home devices and your phone. But which one should you buy? Here are the main points to consider when shopping for a new lock for your door, as well as the best smart locks we've tested.

Our Quick Picks

Short on time? Here our some of our favorite picks based on some common filters for people in the market.

Lock
August 3rd Gen
Schlage Sense
Ultraloq UL3 Bluetooth
August Smart Lock - Keyless Home Entry with Your Smartphone - Silver
Schlage Sense Smart Deadbolt with Century Trim in Satin Nickel (BE479 CEN 619)
Ultraloq UL3 BT Bluetooth Enabled Fingerprint and Touchscreen Smart Lock (Satin Nickel) | 5-in-1...
Best For
Budget Shoppers
Apple & iPhone Users
All Around Buy and those needing Handle
Lock Type
Interior Deadbolt Replacement
Deadbolt Replacement
Handle (Latch/Knobs) Replacement
Alexa Integration?
Yes, with add-on
Yes, with add-on
Yes
Siri / Homekit Integration?
Yes, with add-on
Yes
No
User Reviews
2,498 Reviews
1,470 Reviews
1,848 Reviews
Price
$127.00
$171.73
$174.57
Lock
August 3rd Gen
August Smart Lock - Keyless Home Entry with Your Smartphone - Silver
Best For
Budget Shoppers
Lock Type
Interior Deadbolt Replacement
Alexa Integration?
Yes, with add-on
Siri / Homekit Integration?
Yes, with add-on
User Reviews
2,498 Reviews
Price
$127.00
Where to Buy
Our Review
Lock
Schlage Sense
Schlage Sense Smart Deadbolt with Century Trim in Satin Nickel (BE479 CEN 619)
Best For
Apple & iPhone Users
Lock Type
Deadbolt Replacement
Alexa Integration?
Yes, with add-on
Siri / Homekit Integration?
Yes
User Reviews
1,470 Reviews
Price
$171.73
Where to Buy
Our Review
Lock
Ultraloq UL3 Bluetooth
Ultraloq UL3 BT Bluetooth Enabled Fingerprint and Touchscreen Smart Lock (Satin Nickel) | 5-in-1...
Best For
All Around Buy and those needing Handle
Lock Type
Handle (Latch/Knobs) Replacement
Alexa Integration?
Yes
Siri / Homekit Integration?
No
User Reviews
1,848 Reviews
Price
$174.57
Where to Buy
Our Review

Things to consider

 

Your door Fit

One of the first things to consider before falling in love with one particular model is to make sure it fits with your door in size and lock type.

Locks typically come in a few standard configurations

  1. Attach on your deadbolt (only 1 model on the market is like this)
  2. Interior deadbolt replacement where on the outside your door looks the same but the interior deadbolt section controls the lock and is replaced
  3. Complete deadbolt replacement
  4. Handle / Lever / Knob replacement where you only have one hole on your door
  5. Integrated lock where your deadbolt and handle are in one mechanism where they lock but are separated on the door
  6. Mortise - a fully integrated system

You can click on the images below to filter down the Bluetooth door locks that fit each particular door type.

Handle / Knob

handle-yes-01

Deadbolt Replacement

Deadbolt Replacement

Interior Deadbolt Replacement

interior-replacement-yes-01-01-01-01

Mortise

Mortise Smart Lock

Access Codes

If you are looking for the ability to add access codes for your kids and guests or to make sure the delivery gets into your home safely there are several options these locks accomplish this.

Some have them built-in and will include either push buttons or commonly a touchscreen that will light up as you approach.

The other option is to add a keypad accessory that is installed next to your door and communications to the lock.

The third is via the locks smart phone app which can act as a key for other users.

One thing to keep in mind is with a Bluetooth lock you will only be able to add codes when you are near the door and not remotely. If you are looking to manage your codes from a long distance you will want a lock that has either Wi-Fi built in or connects with a hub that does so that it can connect to your home router.

Access Codes

Integration with smart home ecosystems

Do you already have an Alexa, Apple TV or a smart home hub in your home?

Many of the smart locks on the market let you:

  • Check status of your lock from your phone
  • Lock and unlock the door using voice control
  • Have your lock be a part of a "recipe" like a good night mode that turns off lights, locks door and sets security system.

Click on the buttons below to filter the Bluetooth locks by each of their compatible systems.

Connectivity Path 2

Additional Smart Lock Features

Smart locks also come with a range of other features that could be the deciding factor for your purchase.

Features Remote Lock

Remote Locking

Check or manage your lock while away from your home

Most of the time Bluetooth connectivity is not going to be the best option for you if you want this out of the box without having to purchase an additional bridge device or smart home hub.

At the moment only one lock has the ability to generate and manage keys remotely without an additional device.

Features Autolock

Proximity Locking

Automatically lock behind you or unlock as you approach

With this feature you can have your door automatically lock behind you after a certain amount of time (typically 30 seconds) or have it use your phone's GPS and Bluetooth to automatically unlock the door as you approach.

Features Fingerprint

Fingerprint or Touchscreen

Use your fingerprint to open your door or a touchscreen 

With this feature you can either open the door using an access code and a back-lit touchscreen or your fingerprint to securely open your doors.

Bluetooth Lock Comparison

Bluetooth Door Lock 5 image
Retail Price $499.00
(Available for: $169.99)
Our Review
Bluetooth Door Lock 7 image
Bluetooth Door Lock 8 imageInterior View
Bluetooth Door Lock 9 imageExterior View

igloohome IGM1


Lock Type: Mortise
Finish Options: Black
Connectivity Options: Bluetooth
Google Assistant: Yes
Alexa Support: Yes
iOS App: Yes
Android App: Yes
Pros
  • Airbnb Integration and offline pin code generation (See here for more information on how it works).
  • Dedicated Android and iOS apps along with integrations with Alexa and Google Assistant to set new pin codes and retrieve access history.
  • Sleek looking lock that would fit in especially well in modern homes.
  • Innovative fire feature where the alarm will disarm itself if it senses too high of temperatures (50 – 70 degrees celsius) as well as an audio alarm that will sound if the lock is being tampered with or a code has been tried for more than 5 times in a row.
  • Has a set of physical backup keys.
Cons
  • A few users have complained about battery life
  • Doesn’t have deep integration into other smart home ecosystems and is limited by its Bluetooth connectivity and range.
  • Limited selection of finish options coming only in a sleek black design.

The Igloohome smart mortise locks packs a range of innovative features into a sleek design for your mortise style doors.

Airbnb Integration and offline pin code generation (See here https://www.igloohome.co/blog/how-it-works/smart-lock-without-internet for more information on how it works) are a standout feature for this lock and separates it from other locks and avoids having issues with Wifi connectivity and any late night calls from guests not being able to access your rental apartment.

A few alarm sensors are unique to this device include a built-in temperature sensor that will unlock the door automatically if temperature reach between 122-158 degrees. A built-in audio alert will also go off if the lock is being tampered with or codes have been entered 5 times without success.

Overall if you are hesitant to rely on your Wifi for managing access codes but still would like like to have remote key code capabilities this could be a great fit.

Bluetooth Door Lock 11 image
Retail Price $249.00
(Available for: $416.41)
Our Review
Bluetooth Door Lock 13 image
Bluetooth Door Lock 14 imageInterior View
Bluetooth Door Lock 15 imageExterior View

Nest x Yale


Lock Type: Deadbolt Replacement
Finish Options: Black, Brass, and Nickel
Connectivity Options: 802.15.4 (2.4GHz), Bluetooth, and Weave
Google Assistant: Yes
iOS App: Yes
Android App: Yes
Pros
  • Integration with Google Assistant for voice control
  • Integration with Nest Secure so that when you unlock your door from an authorized device it will disable the security system.
  • Nest x Yale Lock can lock automatically when you’re away. using the Home/Away assist
  • Remote locking and control with Nest Connect Wi-fi accessory that comes in the package unlike most other smart lock solutions.
Cons
  • Focused only on Nest and Google Home/Assistant ecosystem.
  • Some users have had difficulty in getting all of the components to setup and connect properly especially if having changed Wi-fi passwords, etc as well as Nest Connect interacting with some Wi-fi routers in strange ways causing Internet issues.
  • If you have multiple Nest X Yale locks you cannot provide access to just one door (all doors get the access codes)

If you are already have Nest Secure or other Nest products this lock could be a perfect fit for you.

Highlights include integration with Google Assistant for voice control from the comfort of your bedroom at night or across the planet where you have a connection to remotely check on your door status and lock the door (unlocking is restricting from voice control for security reasons).

The device relies on the iOS or Android Nest app for adding user access pins. The lock features a nice touchscreen interface where you can input your 4-8 digit security code.

Unfortunately, some items to be aware of If you are looking for deep integration with Alexa, Siri or other smart home systems like SmartThings you will be better off looking elsewhere. Users have also run into some connectivity issues using the Nest Connect interacting in annoying ways with their home routers and Internet connections.

Looking into the future Google is investing heavily into the Nest product line so expect more integrations with their Nest line of security cameras, video doorbells and Google Nest Hubs.

Overall we like the clean design, deep integrations with Google and Nest ecosystem and can recommend the device for most and especially those already with Nest devices and committed to the Google Assistant voice service for their smart homes.

Your Nest x Yale options:
lock finish

Option 1) Pick a finish

Just want the lock? Pick out the look that matches your door and house style.

remote locking smart lock option icon

Option 2) Add Remote Locking

A Nest Connect is part of the lock package so you get remotely locking and monitoring right out of the box for no extra fees.

Bluetooth Door Lock 16 image
smart lock hub option icon

Option 3) Add compatible smart home products

These devices provide either voice control or added integration with you Nest x Yale lock.

FAQ

Installation

Integration and Connectivity

Security

Lock Bio

About Smart Lock Scout

We are here to help you keep your home and family safely connected. Whether you’re looking to pick a smart lock system, we’ve spent hundreds of hours researching locks to help you find the best product to fit your specific situation.

At Postscapes we combine our years of experience following the smart home market along with user reviews to take the guesswork out of living securely connected. Learn More

Ultimate Smart Lock Guide

Filter and find the perfect lock for your home or apartment

[gravityform id="38" title="false" description="false" ajax="true" tabindex="49"]
<div class='gf_browser_unknown gform_wrapper' id='gform_wrapper_38' ><div id='gf_38' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_38' id='gform_38' action='/bluetooth-door-lock/?fwp_google_home_nest_support=yes#gf_38'> <div class='gform_body'><ul id='gform_fields_38' class='gform_fields top_label form_sublabel_below description_below'><li id='field_38_2' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' >Your Name</label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name no_last_name no_suffix gf_name_has_1 ginput_container_name' id='input_38_2'> <span id='input_38_2_3_container' class='name_first' > <input type='text' name='input_2.3' id='input_38_2_3' value='' aria-label='First name' tabindex='50' aria-invalid="false" /> <label for='input_38_2_3' >First</label> </span> </div></li><li id='field_38_3' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_38_3' >Can you share a high level overview of what you are looking for?</label><div class='ginput_container ginput_container_textarea'><textarea name='input_3' id='input_38_3' class='textarea medium' tabindex='54' aria-invalid="false" rows='10' cols='50'></textarea></div></li><li id='field_38_4' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_38_4' >Best way to reach you?</label><div class='ginput_container ginput_container_text'><input name='input_4' id='input_38_4' type='text' value='' class='medium' tabindex='55' aria-invalid="false" /></div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_38' class='gform_button button' value='Submit' tabindex='56' onclick='if(window["gf_submitting_38"]){return false;} window["gf_submitting_38"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_38"]){return false;} window["gf_submitting_38"]=true; jQuery("#gform_38").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=38&amp;title=&amp;description=&amp;tabindex=49' /> <input type='hidden' class='gform_hidden' name='is_submit_38' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='38' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_38' value='WyJbXSIsIjI0MzNjYTY3YTUxNWM5ZTM5NmFkOWNiZWJiMjkyMDYyIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_38' id='gform_target_page_number_38' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_38' id='gform_source_page_number_38' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_38' id='gform_ajax_frame_38'>This iframe contains the logic required to handle Ajax powered Gravity Forms.</iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 38, 'https://www.postscapes.com/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery('#gform_ajax_frame_38').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_38');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_38').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_38').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_38').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_38').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_38').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_38').val();gformInitSpinner( 38, 'https://www.postscapes.com/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery(document).trigger('gform_page_loaded', [38, current_page]);window['gf_submitting_38'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_38').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_38').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [38]);window['gf_submitting_38'] = false;}, 50);}else{jQuery('#gform_38').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [38, current_page]);} );} );</script><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 38) {} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [38, 1]) } ); </script>
[gravityform id="38" title="false" description="false" ajax="true" tabindex="49"]
<div class='gf_browser_unknown gform_wrapper' id='gform_wrapper_38' ><div id='gf_38' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_38' id='gform_38' action='/bluetooth-door-lock/?fwp_google_home_nest_support=yes#gf_38'> <div class='gform_body'><ul id='gform_fields_38' class='gform_fields top_label form_sublabel_below description_below'><li id='field_38_2' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' >Your Name</label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name no_last_name no_suffix gf_name_has_1 ginput_container_name' id='input_38_2'> <span id='input_38_2_3_container' class='name_first' > <input type='text' name='input_2.3' id='input_38_2_3' value='' aria-label='First name' tabindex='50' aria-invalid="false" /> <label for='input_38_2_3' >First</label> </span> </div></li><li id='field_38_3' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_38_3' >Can you share a high level overview of what you are looking for?</label><div class='ginput_container ginput_container_textarea'><textarea name='input_3' id='input_38_3' class='textarea medium' tabindex='54' aria-invalid="false" rows='10' cols='50'></textarea></div></li><li id='field_38_4' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_38_4' >Best way to reach you?</label><div class='ginput_container ginput_container_text'><input name='input_4' id='input_38_4' type='text' value='' class='medium' tabindex='55' aria-invalid="false" /></div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_38' class='gform_button button' value='Submit' tabindex='56' onclick='if(window["gf_submitting_38"]){return false;} window["gf_submitting_38"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_38"]){return false;} window["gf_submitting_38"]=true; jQuery("#gform_38").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=38&amp;title=&amp;description=&amp;tabindex=49' /> <input type='hidden' class='gform_hidden' name='is_submit_38' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='38' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_38' value='WyJbXSIsIjI0MzNjYTY3YTUxNWM5ZTM5NmFkOWNiZWJiMjkyMDYyIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_38' id='gform_target_page_number_38' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_38' id='gform_source_page_number_38' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_38' id='gform_ajax_frame_38'>This iframe contains the logic required to handle Ajax powered Gravity Forms.</iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 38, 'https://www.postscapes.com/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery('#gform_ajax_frame_38').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_38');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_38').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_38').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_38').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_38').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_38').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_38').val();gformInitSpinner( 38, 'https://www.postscapes.com/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery(document).trigger('gform_page_loaded', [38, current_page]);window['gf_submitting_38'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_38').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_38').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [38]);window['gf_submitting_38'] = false;}, 50);}else{jQuery('#gform_38').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [38, current_page]);} );} );</script><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 38) {} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [38, 1]) } ); </script>