How To Create a Hotel Booking Website With WordPress (Step by Step Guide)

Featured image for building hotel booking site

Is Your Site Launch-Ready?

Get your free checklist and avoid costly launch delays & errors

Download is Just A Click Away!​

Enter your email address and be the first to learn about updates and new features.

Blog Sticky Popup - Download Website Launch Checklist

If you are looking to start a hotel or vacation rental WordPress website with Astra, this is the right tutorial.

The bad news is that small hotels and single rental properties like B&Bs or villas are disadvantaged. Unfortunately, the hospitality sector dominated by big brands and OTAs (online travel agents) leaves almost no room for competition.

In the face of COVID-19 pandemic, many small hotels have fallen short of their plans; some, worse yet, had no chance of survival.

Because of that, rental owners have several crucial tasks on the table so far: how to cut down expenses, how to attract a potential guest online, and how to diversify booking channels.

The good news is that WordPress paired up with a few quality tools can help you solve these issues. In this post, you’re about to see to what extent!

Why Astra?

Is it a good idea to use Astra for hotel or vacation rental niche businesses? No doubt. And we can give you a few good reasons why it can become your go-to solution!

The Astra theme is trusted by more than a million WordPress users, which is a massive deal for a multipurpose WordPress theme. This makes it a perfect starting point in terms of design and speed for literally any sort of website. Beyond that:

  • The theme ships with 270+ sleek and flexible starter templates giving you a chance to choose any concept and design you set your mind to. The library includes dedicated Hotel and Bed and Breakfast templates.
  • You can customize the theme with any preferable WordPress page builder – Astra offers you tailor-made integration with top-popular plugins, including Elementor and Gutenberg.
  • You can import complete individual pages to save a huge amount of time on building and customizing your site.
  • AMP support for seamless site browsing on mobile phones and tablets, which is crucial for hotel bookings.
  • Bespoke integration with WooCommerce to help you create an online store and sell extra hotel products and services.
  • Most importantly, it’s loved by regular WordPress users as well as WordPress leaders across the globe.

And this list can get reeeeally long, so let’s now cover what it takes to build a hotel booking WordPress website and whether it can replace a proprietary property reservation software.

Why Would You Choose WordPress Over Proprietary Booking Engines/Cloud Software?

The short answer is – to cut down expenses and run a commission-free independent website.

Let us list just a few reasons why WordPress might be the right tool for the long run:

  • WordPress is an enterprise-grade CMS, which means you can scale your website from a small hotel to a multi-chain enterprise with numerous rooms, properties, services, and bookings.
  • Compared to proprietary booking engines, WordPress themes and plugins will cost you at least threefold less. The average annual charge for a proprietary software varies from $500 to $1000. Furthermore, they almost always charge extra commissions depending on how many rooms you have or bookings you received, while WordPress plugins and themes offer humble fixed prices per year or once (for a lifetime usage).
  • WordPress is completely extendable – you can implement any plugin, theme, or code, while you have no freedom to customize the source code of the proprietary booking software.
  • WordPress gives us numerous tools to improve your local SEO to put your hotel website in front of a larger number of prospects.
  • With the advanced WordPress page builders like Elementor and the arrival of Gutenberg, you can create outstanding websites visually, customizing them the way you want.

WordPress (along with its plugins and themes, of course) has always been a more cost-effective solution compared to the cloud counterparts. Now, in these uncertain times of pandemic, it’s a true gem for the rental accommodation owners.

It’s up to you, though – you can use WordPress and third-party platforms at the same time, but then you should consider all the cons we’ve listed above.

Now let’s move on to the practical bit!

In this post, we’ll be using:

  • Design base: a free Astra theme that will serve as a micro-niche WordPress hotel theme (you are free to go with any Astra version or demo site, though). Thanks to its polished minimalist styling and flexible customization options, Astra is a perfect starting point for turning the theme into a tailor-made website.
  • Functionality powerhouse: the MotoPress WordPress Hotel Booking plugin with optional add-ons. You can also use any other WordPress booking plugin.

What’s the Cost To Build a Hotel Booking Website?

It all depends on what solutions/services you use. Let’s give you an idea of an approximate cost of the WordPress hotel booking site based on the solutions we’ll use in this post (all prices are subject to change).

Service/tool Annual fee for one website
WordPress software ( Free
Hosting services (check out our recommendations) Low-budget: ~ $100 Advanced: ~ $1000
Domain name Usually free in a suite with hosting Otherwise ~ $15
Astra Pro theme for a hotel Starting from $49 €45 per year
MotoPress Hotel Booking $79
Gateways for online bookings: PayPal, 2Checkout, Braintree, Stripe, Beanstream/Bambora Free
Gateways for online bookings: extra local gateways via WooCommerce $99
Sync to OTAs (Airbnb, Booking, etc.), Google and Apple calendars Free
Optional extra plugins The average WP plugin cost is about $50 – $90
Optional website maintenance services ~ $100 – $500

Set up the MotoPress WordPress Hotel Booking Plugin With Astra

The process of setting up and configuring the WordPress booking plugin is quite straightforward. Astra and the Hotel Booking plugin by MotoPress must be installed and activated.

Now, let’s break this tutorial down into several key steps so you can have a look at the dashboard and assess whether the solution meets your needs.

Step 1. Create Rental Units

Labeled as Accommodation types, those can be any rental units ranging from hotel rooms to villas, condos, bed and breakfast establishments, campsites – and even boats or trailers.

You can add unlimited accommodation types (commission-free) and categorize them by types if needed. You can supply each unit with:

  • Custom text description.
  • Taxonomy-based amenities (means you can use the same ones across the room types by just ticking the boxes) like WiFi, pet-friendly, towels, etc.
Accommodation categories image
  • Main image and image galleries.
Main image and image gallery
  • Custom filterable parameters (e.g. location or bed type) to enable your prospects to perform a very tailored and quick search.

As for the layout, website container width, typography, buttons, and colors, the Astra theme gives you full control over them via the WordPress Customizer:

Astra customizer settings image

For example, let’s change the accent colors for buttons, stretch the website container, and create a grid layout for the properties listing:

Image of room listings

There are several ways to achieve a grid layout for rooms: use the block editor (Gutenberg)/Elementor columns, add custom classes or download a free Hotel Booking Astra Integration plugin, which will additionally put smooth Astra+MotoPress styling adjustments in place.

The Astra theme is perfectly integrated with Elementor and the default Gutenberg editor for smooth customization. So does the Hotel Booking plugin that offers Gutenberg blocks out of the box:

Hotel booking plugin with gutenberg

For each block, there are display settings you can manage in clicks:

Image showing display settings

If you are on Elementor, you also don’t need to fuss with shortcodes, there is a free conjunction add-on that integrates Hotel Booking widgets into Elementor for visual editing:

Hotel booking plugin with elementor

Each property can display an individual calendar that displays booked and available days in real time (unavailable ones are crossed out).

Calender of availability

If you offer extra free or paid services, you may also feature them along with the property. For paid services, you can charge either once or per night (per stay or per guest). You can also allow your guest to choose the frequency:

Services as per guest choice

Step 2. Add a Property Search Form

The default arrival, departure and the number of adults/children fields can be shortened to just dates or the umbrella term “guests”.

Image for search options

If you want to add more filters/fields, such as location or room type, it’s also possible with the “Attributes” menu:

Image of attributes menu

Those filters will appear in the search form:

Attributes menu in the form

The search form by default will inherit styles from your Astra theme. But you can adjust the styling using the Customizer settings, plus optionally utilize a free Hotel Booking Styles add-on. The extension is made to simplify adding custom classes to just clicking the buttons in the visual Gutenberg editor.

For example, it will help you make the search form horizontal, hide form labels, break the form into several lines, etc. – without any coding:

Search form styling options

The default property finder form is vertical to better fit into any modern viewport:

Default view of a form

But you can easily transform it into a horizontal one in Gutenberg. For the example below, we also changed the field width and stretched the Search button:

Horizontal view of the form

The calendar color scheme can be easily updated via the plugin settings so you’ll find a suitable color scheme in no time:

Calendar color scheme options

For example, let’s change the scheme, put the form on the image background in Gutenberg, and remove paddings between fields:

Image of calendar after changing color scheme

Guests can book multiple accommodations at one go so you can enable group bookings by one person.

Step 3. Set up Property Pricing, Seasonal Rates, and Discounts

The pricing system of the WordPress booking plugin by MotoPress is flexible enough to reflect your business strategies. The property pricing may vary based on:

  • In-room extras: amenities, meals included, refundability, etc.
  • Seasons: any holiday or term.
  • The length of stay (you can set up automatic discounts for a longer stay).
  • The number of guests.
Image of setting up pricing

For specific occasions or loyal clients, there is a custom coupon creator menu with loads of settings:

Image of coupon creater

Step 4. Include Optional Taxes and Fees Into the Property Cost

If there are taxes or fees you are required to impose on your guest, include them into the property cost (per guest or per day; per accommodation or per day; per accommodation in %).

taxes fees motopress

Using the “Include” option, you may opt for displaying the property rate on the website with all the tax and fee accommodation charges included.

include tax rate

If the Include option is off, your customers will see the rate in the following way:

taxes excluded

Still, this will make guests aware of extra charges. The latter will be listed in detail on the checkout page.

If it’s turned on, the price will be calculated with all the taxes and fees included, accompanied by the notice “Includes taxes and fees”. The price is calculated based on the guest’s search parameters (such as arrival-departure dates, the number of guests and rooms).

taxes included

Step 5. Go Through the Availability Settings

You can set specific booking rules and availability settings for accommodations and seasons. For example, you can limit the days available for arrival/departure, state the minimum and maximum stay-in period, or even temporarily take properties out of bookings:

Image for rooms availability settings

Step 6. Handling Website Bookings

If you want to set your rental property WordPress website on autopilot and take automatic bookings, just a few simple steps are required.

First up, decide how the system should operate:

  • Confirm reservations manually as admin.
  • Let a guest confirm it via email link.
  • Opt for automatic bookings upon payment. The list of built-in WooCommerce payment gateways is vast: PayPal, 2Checkout, Braintree, Stripe and Bambora (formerly Beanstream). You can use them without extra cost, but if you need more, you can either code it yourself or purchase an extra WooCommerce payments addon that will simplify it to clicking buttons.
  • The LatePoint booking plugin is also capable of managing bookings for a hotel, B&B, or Airbnb, check it out here.
Image for confirmation settings

The guest can pay either the full amount or just a deposit (fixed or percentage) – it’s up to you. Furthermore, you can even limit the number of days prior to the arrival date when the deposits are available.

Setup payment options and geteways

The deposit balance can be paid upon arrival – your staff will be able to manually record a payment.

Additional information about payment

If you want to bring more payment automation to the table, you can choose to set up automatic balance payment emails to secure bookings by paying before arrival.

By the way, if you also accept bookings by phone, for example, they can also be recorded manually to move all your paperwork online.

To view all upcoming or past bookings by statuses, there is a color-coded Bookings calendar:

Image of booking calendar

Step 7. Optionally Sync Bookings With Extra Platforms via iCal (Airbnb, Apple/Google Calendar, etc.)

Thanks to the iCal file format support, you can benefit from the near real-lime two-way synchronization between WordPress and any other website that supports iCal URLs.

This integration will help your hotel website on WordPress in multiple aspects we highlighted at the beginning:

  • Diversify your booking channels by connecting your MotoPress-powered WordPress hotel theme (Astra in our case) to online travel agents, such as HomeAway, Airbnb, Thus, you’ll get all the bookings in one place fully synced. This functionality is integrated with the Hotel Booking plugin by default, at no extra cost.
Image of calendar synchronization scheduler
  • By synching your bookings with Google or Apple calendars, you’ll be able to automatically share data on new reservations with your employees, manage bookings on the go from any device, and even sync bookings recorded from your external calendars to your WordPress website.
Sync calendar with google calendar

As you see, having your independent WordPress hotel website with direct bookings doesn’t mean you need to sacrifice the power of OTAs – you can choose to use both instead.

Step 8. Analyze your sales and bookings via the built-in Revenue Chart

Using the Reports menu, you can further manage and analyze your business performance.

Thanks to the Export menu, you can download all the structured data on your bookings with all the details in a portable CSV format.

As for the Revenue chart, it’s made to provide you with the graphical representation of your sales and bookings performance within a chosen period of time.

revenue chart

The stats chart makes it easy to compare your earnings and the number of bookings by dates, analyze low and high seasons, understand how your extras help you generate more money, or see what you earn after taxes.

all bookings

You can easily filter this information by the period, booking status, and revenue type.

Localize the Property Booking Plugin

Remember, reaching a global audience is hugely important for a hotel website so put effort into maximizing your reach. The plugin will help you with that – it by default uses the language of your default WordPress settings.

So far the WordPress reservation plugin supports 16 languages: English, Portuguese, Polish, Russian, Spanish, Turkish, Swedish, Italian, Hungarian, Czech, Chinese, Dutch, French, Arabic, Ukrainian, and German. That means you can significantly speed up the process of localization and editing the plugin strings into your language.

Although the MotoPress booking plugin was officially tested with WPML and Weglot, you can use any paid or free WordPress multilingual plugin for both translating and making your website available in several languages.

Implement More Hotel Operations With Extra Addons

The list of specialist add-ons to integrate more functionality is optional allowing you to add only those options you need. For example:

  • Allow past guests to leave reviews on your site and evaluate properties by different criteria.
Reviews by past guest

Those addons that output content on your website (e.g reviews) will automatically inherit styles from the Astra theme. You can rest assured it will look like a native hotel booking WordPress theme piece!

Final Word: Build a Fully Fledged Hotel Booking Website With Astra & Motopress

This is of course just a short overview of the hotel website building process – there are tons of tools in the MotoPress WordPress reservation plugin you can deploy on your preferred version of the Astra theme.

Let’s sum up some of the main reasons why the MotoPress Hotel Booking plugin and Astra are a great combo:

  • A property management system that can handle unlimited properties and bookings.
  • Real-time reservations with or without instant payments.
  • Safe online payments.
  • Numerous dedicated tools to help you integrate Astra and Hotel Booking further.
  • A tiered pricing system, plus taxes and fees management.
  • The iCal sync system to connect all bookings across all platforms.

Most importantly, you can run a hotel website and bookings without a need to connect proprietary reservation software. In the face of present-day challenges, this is the solution to move all the paperwork online, generate steady income, reduce expenses, and run independent direct bookings.

If you still have questions, do let us know in the comments!

Is Your Site Launch-Ready?

Get your free checklist and avoid costly launch delays & errors

Download is Just A Click Away!​

Enter your email address and be the first to learn about updates and new features.

Blog Sticky Popup - Download Website Launch Checklist

Disclosure: This blog may contain affiliate links. If you make a purchase through one of these links, we may receive a small commission. Read disclosure. Rest assured that we only recommend products that we have personally used and believe will add value to our readers. Thanks for your support!

  1. Julia Minnie Profile Pic

    Thanks for such making this tutorial as simple and clear as you can! I’ve been using the Hotel Booking plugin from MotoPress for a while and could not imagine how flexible the plugin can be across different themes.

  2. Anna Profile Pic

    Great tutorial on the Hotel Booking plugin and the Astra theme! I really like this powerful combo and thanks to your in-depth tutorial it will be so easy to build and configure a fully-fledged hotel booking website 🙂

  3. Darius Profile Pic

    „Although the MotoPress booking plugin was officially tested with WPML and Weglot, you can use any paid or free WordPress multilingual plugin for both translating and making your website available in several languages.” – it’s not quite true – for example free version of Polylang doesn’t work on woocommerce section (dealing with payments). The added language on ‘Booking Confirmation page’ reverts to the original language. Loco plugin works only if you want to translate into a different language. So it’s best to go with WPML.

    Good article though! Thanks for putting it all together.

  4. Fran Profile Pic

    I am looking to enable different folks list their homes for rent. Therefore I would need them to be able to login and make changes to their own listing (description, price, calendar, pictures, etc.) while I can be in control of what they each can do.

    For example, some may want reviews to be listed, some may not. Some may want to add online payment, some may not, etc.

Leave a Comment

Your email address will not be published. Required fields are marked *

Astra is Free. Now & Forever.

We believe creating beautiful websites should not be expensive. That's why Astra is free for everyone. Get started for free and extend with affordable packages.

Download is Just A Click Away!

Membership Retention Checklist Download



Download is Just A Click Away!

Enter your email address and be the first to learn about updates and new features.

Download Free Astra Theme - Modal Popup Form
Scroll to Top