Business directory

A business directory plugin for WordPress, free to build.

Owner claims, reviews and front-end submission are in the free plugin. Charging businesses to be listed is the Pro part, which is the right way round: build the directory first, and price it once being in it is worth something.

What makes it a business directory

A list of businesses is not a directory yet.

Four things separate a directory people come back to from a page of addresses that goes stale in a month. Each one is marked with which tier it is in.

Free

The owner has to be able to claim it

A business directory is only trusted once the businesses in it are represented by the people who run them. Owners claim their listing and take over editing it, without you handing out wp-admin logins.

Free, deeper on Pro

Reviews, and the arguments that follow

Visitors leave reviews and owners respond, and each listing type can carry its own rating criteria, so a restaurant is rated separately on food and service. Pro adds ready-made criteria sets, a ratings breakdown and photo reviews.

Free

Somebody has to keep it accurate

Front-end submission with a duplicate check, so the same business does not arrive three times, and a draft reminder for owners who start and wander off.

Pro

Eventually, charging to be in it

Pricing plans, credits, coupons and lead forms. Every monetization feature is Pro, which is the honest split: building the directory costs nothing, charging for it is the paid part.

What people build

The shapes this usually takes.

A local business directory

The classic: shops, trades and services in one town or region, with categories and a map.

A chamber or association directory

Members listed, claimed and kept current by the members themselves rather than by you.

A niche industry directory

One trade done thoroughly, where the filters matter more than the volume of listings.

A directory that becomes a marketplace

Listings first, then lead forms and paid placement once there is enough traffic to be worth buying.

Building something that is not specifically businesses, like property, events or any other listing type? The directory plugin overview covers the category rather than this one use of it.

The honest order

Build it, fill it, then charge for it.

The common way a business directory fails is charging on day one, when there is nothing to be listed alongside and no traffic to justify the fee. The reason the whole directory is in the free plugin is that this order works better: get real businesses in, get owners claiming their entries, and only then put a price on placement. Nothing about the free tier expires while you do that.

When you get there, what Pro adds is the money side: pricing plans, credits, coupons and lead forms.

How does a business directory work on WordPress?

A business directory on WordPress is a set of listings, one per business, that visitors can search, filter by category and location, read reviews on, and contact. A plugin supplies the parts WordPress doesn’t have: a listing structure with its own fields, a front-end form so owners add themselves, a claim flow so owners take over entries, and search that works at directory scale. Listora puts all of that in the free plugin and keeps charging for listings in Pro.

Key points

  • A directory is listings plus structure: types, fields, categories, locations, search and a map.
  • Owners should add and edit their own entries from the front end, never from wp-admin.
  • Claims, reviews, hours, maps and import are in the free plugin. Plans, credits and lead forms are Pro.
  • It’s self-hosted: no per-user, per-member or per-listing fee, and no commission on what you sell.
  • Build and fill the directory first. Add paid placement once there’s traffic worth paying for.

The sections above this one on the page cover what makes a business directory different from a list of posts. This part goes through the mechanics in order, so you can judge whether the whole thing is realistic for you before you install anything.

What parts does a business directory need?

Think of it as eight parts that have to agree with each other. If one is missing, the directory feels unfinished to visitors even when they can’t say why.

PartWhat it doesIn Listora
Listing typesGives each kind of business its own fieldsFree
Categories and locationsLets people narrow by trade and placeFree
SubmissionOwners add listings themselvesFree
ClaimsOwners take over existing entriesFree
ReviewsVisitors rate, owners replyFree
Hours and mapOpen now, directions, pinsFree
SearchKeyword, filters, radiusFree
Paid plans and leadsCharging to be listedPro

The rest of this page takes them one at a time.

Listing types and fields

A listing type is the shape of an entry. Listora ships ten: Business, Restaurant, Hotel, Real Estate, Healthcare, Education, Event, Job, Place and Classified. Business uses the LocalBusiness schema type, Restaurant uses Restaurant, and so on, so the structured data Google reads matches what the listing actually is.

Fields belong to the type. A restaurant gets cuisine and price range. A clinic gets the fields you give it. A visitor filtering restaurants never sees hotel amenity checkboxes. If none of the ten fits, you can build your own under Listora > Listing Types with Add New Type, picking from text, number, email, phone, URL, select, checkbox, gallery, video, map location, business hours, social links and price range fields.

A plain local business directory usually needs one type, Business, with a few extra fields for your niche. Don’t add types you don’t need. Every type is one more form a submitter has to understand.

Categories and locations

Categories answer “what kind of business”. Locations answer “where”. Both are taxonomies you control. Locations nest as deep as you want: Country, State, City, Neighborhood for a national directory, or one level for a single town. Each location gets its own archive URL, so /listing-location/ pages exist from day one.

Keep category lists short at launch. Twenty well-named categories beat two hundred that overlap. You can split a busy category later and move listings across, and you can’t easily merge a hundred thin ones.

Submission

Owners submit through the Add Listing page, which the setup wizard creates. It’s a step-by-step wizard by default (Choose Type, Basic Info, Type Fields, Categories, Preview & Submit) or a single page form if you prefer, set under Listora > Settings > Submissions. Drafts save, and an owner who starts and wanders off gets a reminder email after 24 hours.

Submitting needs a signed-in account. There’s no guest path, so each listing has an owner you can contact and suspend. You choose whether new listings wait as Pending or publish at once.

Claims

Most listings in a mature directory are added by you or imported, not typed in by the owner. Claims close that gap. Every unclaimed listing shows a Claim button. The owner states proof of ownership, can upload a licence or utility bill (JPEG, PNG, GIF, WebP or PDF up to 5 MB), and the claim lands in Listora > Moderation > Claims for you to approve or reject. There’s no auto-approve. On approval the listing’s author changes to the claimant, who can then edit it and reply to reviews. A wrong approval can be undone with Reverse approval.

The business claims doc has the full flow, and the post on how owners claim listings covers the habit side of it.

Reviews

Visitors leave a 1 to 5 star rating and written text. Each member can review a listing once. Owners reply publicly. Visitors mark reviews helpful and report bad ones. Under Listora > Settings > Reviews you set auto-approve, a minimum length and whether replies are on. For a public directory, hold reviews for moderation at first.

Per-type rating criteria, such as food and service for a restaurant, are on in Free. Pro adds ready-made criteria sets, a ratings breakdown chart and photo reviews.

Hours and maps

Business hours support up to three ranges per day, so a kitchen open 08:00 to 12:00 and 17:00 to 22:00 is one day with two ranges. Open or closed is worked out against your site timezone, so set that under Settings > General before you wonder why a cafe reads closed at noon.

Maps are Leaflet, with clustering and a Search this area button. You choose the tile source under Listora > Settings > Maps. OpenStreetMap is fine for a small site and asks busy sites to use another provider, such as a MapTiler or Stadia key. Google Maps and address autocomplete are Pro.

Search reads a dedicated index table with a geo bounding box and Haversine distance for radius searches, rather than stacking custom field queries. Visitors combine keyword, category, location, features and the map, and the URL keeps the state so a search can be shared. There’s a quick tour of how this behaves in the search and discovery features.

SEO pages

People search for “plumbers in Leeds”, not “business directory”. Pro can generate a page for each type and location combination, such as /plumbers-in-leeds/, with its own title, JSON-LD and sitemap entry, and it defers to Yoast or Rank Math when either is active. Leave it off until a combination has enough listings to be worth visiting. A page with two entries is thin.

How do I set up a business directory with Listora?

Plan on an afternoon for a working skeleton and a few weeks to fill it. These are the screens you’ll use, in order.

  1. Install. Download the free plugin from wbcomdesigns.com, then go to Plugins > Add New > Upload Plugin, choose the ZIP and activate. It needs WordPress 6.9 and PHP 8.1 or higher. It isn’t in the wordpress.org plugin directory, so searching from inside WordPress won’t find it.
  2. Run the Listora Setup wizard. It opens on activation. Step 1, Directory Type: tick Business, or whatever fits. Step 2, Location: country, city and the latitude and longitude maps open on, or tick the global option. Step 3, Map Provider: pick a tile source. Step 4, Pages: it creates Directory Home, Add Listing and My Dashboard, plus optional pages such as Browse Categories. Step 5, Demo Content: load a pack to test with, or skip it.
  3. Edit the type. Open Listora > Listing Types, click Business and add the fields your niche needs. Remove any you won’t use.
  4. Build categories and locations. Add the top level first, then children with the Parent dropdown.
  5. Set submission rules. Under Listora > Settings > Submissions choose Require admin approval or Auto-approve, image limits and expiry.
  6. Set spam protection. Honeypot and rate limits are on by default. Add reCAPTCHA v3 or Cloudflare Turnstile, and Akismet if you use it. The post on stopping spam submissions goes through the layers.
  7. Add your first batch. Type them in, or import a CSV (below).
  8. Test as a stranger. Open a private window, register, submit a listing, claim another one and leave a review. Then delete the demo data under Listora > Settings > Advanced, in Maintenance, with Delete Demo Data.

The free demo shows the same screens populated, so click through it before step 1 if you want to see where you’re heading. For a longer walk through the planning side, the business directory guide goes further.

Can I move a directory over from another plugin or a spreadsheet?

Yes, both. Which route you take depends on where the data sits now.

From another directory plugin. Listora has database-direct migrators for GeoDirectory, Directorist, Business Directory Plugin, ListingPro and HivePress. Keep the old plugin active, open Listora > Settings > Tools > Migrate, pick the source and let it run in batches. Re-running doesn’t duplicate listings that already match by title and coordinates. Check a sample on the front end, then deactivate the old plugin. One caveat from the docs: opening hours may not carry across, because each plugin stores them differently and Listora reports a shape it can’t verify instead of guessing. Re-check hours after any migration.

If you’re weighing a switch, the comparison pages give a fair read of where each plugin is ahead: Business Directory Plugin, GeoDirectory and Directorist. Check each rival’s own site for current details, because their plans change.

From a spreadsheet. Export to CSV with one row per business. Under the import tool, pick the file, choose the Listing Type, map each column to a Listora field (exact name matches are detected for you), review the preview of the first 10 rows, then run it. Larger files run as a background job, so you can close the tab. Each row is fingerprinted, so a retry after a failure doesn’t create duplicates. JSON and GeoJSON files import the same way.

A few habits make a spreadsheet import clean:

  • Put one value per cell, and use a separate column for each address part.
  • Include latitude and longitude if you have them, so pins land correctly.
  • Use the same category names your site already has, or let the import create new ones and tidy them afterwards.
  • Do a ten-row trial before the full file.

There’s a worked example of the spreadsheet route in the Airtable move guide, and the migration features page lists every source.

What does it cost to run a business directory?

Hosting and your own time, mostly. Listora is a plugin on your own WordPress site, not a hosted platform, so there’s no per-user, per-member or per-listing fee and no commission on anything you sell. You set your own listing prices. Payments go to your own Stripe or PayPal account, or through WooCommerce, Paid Memberships Pro or MemberPress, using your keys. The Pro licence is priced by how many sites it covers and nothing else. The pricing page states this in its FAQ and shows the current tiers, so we don’t repeat figures here.

Compare that with the models you may be weighing:

ModelWho runs itHow it’s billed
Plugin (Listora)You, on your hostLicence by site count
Theme with built-in directoryYou, on your hostOne-off or annual licence
Hosted directory platformThe vendorMonthly fee, often by tier

A hosted platform is faster to start and someone else patches it, which is a real advantage if you never want to touch a server. The trade is that your listings and the search traffic they earn live on the vendor’s terms. The post on directory themes vs plugins goes further into that choice.

Other costs to plan for, none of them specific to Listora: a decent host, a map tile provider if you outgrow the free OpenStreetMap tiles, transactional email so claim and approval messages arrive, and your time moderating. Moderation is the one people underestimate. Budget an hour a week at the start.

How do I charge businesses to be listed?

You do it with Pro, and you should wait until it makes sense. Pricing plans define tiers with a credit cost, a listing duration, which types and categories the plan applies to, and whether it marks the listing Featured. Owners buy credits, pick a plan when they submit, and the credits are held and deducted when the plan activates. Coupons discount plans. Lead forms capture enquiries against a listing.

Two limits are worth knowing so you don’t promise too much. A plan doesn’t gate analytics or hide contact details, and credits aren’t automatically refunded if you reject a listing. Plans can mark a listing Featured, but nothing rotates featured listings for you.

The post on how directories make money compares paid listings, featured placement, leads and memberships, and the Pro docs on plans cover setup.

What should I check before launching a business directory?

Run this list the week before you announce anything.

Content

  • At least fifty real listings, with photos and hours, across your main categories. See first listings for a directory for ways to get there without begging.
  • Every listing in a category and a location. An unfiled listing is invisible to filters.
  • Demo data deleted.

Ownership and trust

  • Claim button visible on an unclaimed listing, and a test claim approved end to end.
  • A written rule for what proof you accept, and rejection reasons you’ll reuse.
  • Review moderation set the way you want, and the Reviews tab tested with a second account.

Technical

  • Site timezone correct, so open and closed states are right.
  • Map tile source chosen, with attribution showing.
  • Permalinks saved once after any URL change.
  • A test email from the claim and approval flow actually reaches an inbox.
  • Add Listing and My Dashboard tested on a phone. Owners will use one.

Spam and abuse

  • CAPTCHA keys in, banned words list started, rate limits left on.
  • You know where Listora > Moderation lives and who checks it.

Search

  • Title and description filled for your directory home page.
  • Sitemap submitted to Search Console.
  • SEO pages left off until you have enough listings per combination.

What are the common mistakes with business directories?

Charging on day one. With nothing to be listed alongside and no traffic, the fee has no value to the buyer. Fill first, charge later.

Too many categories. Visitors scan, and owners pick the first plausible match. Overlap breeds miscategorised listings that you then fix by hand.

Importing without a plan for ownership. A thousand imported listings with no claims are a thousand listings that go stale. Tell the businesses they’re in, and link them straight to their own page.

Ignoring upkeep. Restaurants close and phone numbers change. Read reports weekly, and sample the top listings each quarter. The listing freshness post has a routine.

Leaving the map on a blank background. Listora doesn’t pick a tile source for you, because each provider has its own terms. Until you choose one, maps show markers and nothing behind them.

Is Listora the right plugin for every business directory?

No. If you need an MLS or IDX feed, a booking engine, or a full marketplace where buyers pay sellers inside your site, a directory plugin isn’t the right base. Listora lists who exists and lets people find and contact them. It doesn’t copy listings from other sites either, so the first batch is your own work.

If you run a directory of a few dozen entries and never want owners to log in, a simple page of posts may be enough. And if you want zero maintenance, a hosted platform is a fair answer. For the rest, a self-hosted plugin where the data and the traffic stay with you is hard to beat.

What is the best business directory plugin for WordPress?

It depends on what you need on day one. Listora’s pitch is that claims, reviews, hours, maps, import and front-end submission are all in the free plugin, with charging in Pro. GeoDirectory goes deeper on location handling. Directorist has a large extension catalogue. HivePress is modular and leans toward marketplace features. Business Directory Plugin is one of the longest-running. The best WordPress directory plugins roundup lays out the differences, and you should check each plugin’s own site for current plans.

The test that matters: list the five things your directory can’t launch without, then check which side of each plugin’s free and paid line they fall on.

Is there a free business directory plugin for WordPress?

Yes. The free Listora plugin runs a complete public directory with no licence key and nothing that expires: listing types, categories, locations, submission, claims, reviews, hours, Leaflet maps, search, moderation, spam protection and import. What it doesn’t do is charge businesses. Pricing plans, credits, coupons, lead forms and Google Maps are Pro. The free vs Pro page is the plain list.

How do I create a business directory website step by step?

Pick your niche and area. Install the plugin and run the wizard. Shape the Business type for your trade. Build a short category list and your location tree. Turn on front-end submission and moderation. Load the first fifty listings. Invite owners to claim theirs. Moderate for a few weeks, and only then think about plans. The setup section above has the screens, and the step-by-step guide covers the planning around them.

Can business owners edit their own listings?

Yes. After a claim is approved, or when they submit their own listing, owners edit from My Dashboard > My Listings. The form opens inline. Owners can also renew, deactivate and reactivate a listing, so a shop closed for the winter leaves search and the map without losing its reviews. If someone abuses the privilege, suspend the account from the WordPress Users screen.

Can I use it for a chamber of commerce or association directory?

Yes, and it suits the job. Members submit or claim their own entries and keep hours and contact details current themselves. Use a Business type with fields for membership level, then limit which types accept submissions with Allowed types in the submission settings. Pro adds a moderators role, so a committee member can review claims without full admin rights.

Also worth reading

Questions

What people ask before starting one.

What is the best business directory plugin for WordPress?

It depends whether you need to charge for listings on day one. Listora puts the whole directory in the free plugin, including owner claims and reviews, and keeps monetization in Pro, so you can build the thing and find out whether anyone uses it before paying anything. Other directory plugins split the line in different places, and it is worth checking exactly which side claims and reviews sit on before you commit.

Is there a free business directory plugin for WordPress?

Yes. Listora is free to build a working business directory: listing types, categories and locations, front-end submission, owner claims and the reviews system are all in the free plugin with no licence key. What is Pro is charging for it, which is the part most people only need later.

How do I create a business directory in WordPress?

Install the plugin, define the listing type and the categories that suit your niche, and open front-end submission so owners can add themselves. Seed it with enough real listings that the first visitor finds something, then turn on claims so owners take over their own entries. Charging comes last, once the directory is worth being in.

Can business owners edit their own listings?

Yes, and it is the feature that decides whether a directory stays accurate. Owners claim their listing with a site account and edit it from the front end, never in wp-admin, so you are not the bottleneck for every phone number change.

Can I charge businesses to be listed?

Yes, on Pro. Pricing plans, credits, coupons and lead forms are all Pro features, from $69 a year. The directory itself, including claims and reviews, stays free, so the usual order is to build it, grow it, and add the paywall once being listed is worth paying for.

What is the difference between a business directory and a marketplace?

A directory lists who exists and lets people find them. A marketplace handles the transaction between them. Most business directories start as the former and only some need to become the latter, so it is worth being clear which one you are building before you pick software for it.

Start with the free plugin.

The whole directory, including claims and reviews, with no licence key and nothing that expires.

Get Listora free See the full directory overview

Video

Start a business directory website

How to Start a Business Directory Website on WordPress3:12Chapters and transcript

Browse the full video library →

What customers say on Trustpilot

WBCOM Designs is Amazing!

WBCOM Designs has constantly updated and supported their plugins and themes. Recently the new BuddyNext project is Amazing! - and the new line of addons like Mediaverse, Jetonomy, Mediashield, and Listora.. are likewise Amazing! - and very well built. Today their online Chat solved a download…

Edward S.US