Feature catalogue

Every capability.
And every limit.

Seven systems, shipped inside one WordPress plugin: the directory engine, the admin console, the front end, the SEO stack, the billing platform, the customer portal and the backlink network. Below is the whole list — with exactly which parts are free, which are paid, and the things we haven't built.

Get the free plugin Free vs paid, line by line

Free version live on WordPress.org · no account, no card, no listing cap

One license, nine line items

What it replaces

A directory that actually earns needs nine separate things. Almost everybody rents them from nine separate vendors and spends the first month making them talk to each other. Each row below is a subscription that stops being necessary.

The directory engine
Replaces GeoDirectory or Directorist — listings, categories, location pages, search.
Keyword rank tracking
Replaces the rank-tracker seat you'd buy from an SEO suite. Runs on your own Search Console data.
Traffic analytics
Replaces a hand-built GA4 + dashboard setup. Search and traffic in one screen, inside WordPress.
Multi-engine indexing
Replaces a URL-indexing service. Google Indexing API plus IndexNow, batched nightly.
Sitemaps
Replaces the sitemap half of Yoast or Rank Math. XML for engines, HTML for people, auto-regenerated.
Structured data
Replaces Schema Pro. LocalBusiness, BreadcrumbList and ItemList emitted on every URL level.
Subscription billing
Replaces MemberPress + WooCommerce Subscriptions. Your Stripe account, your prices, your money.
Claim-and-verify portal
Replaces a separate portal product. Listed businesses log in and manage their own page — without a WordPress account.
A backlink network
Replaces nothing — there is no equivalent to buy. Opt-in, niche-isolated, verification-gated.
9 → 1
Vendors to manage
$0
Monthly platform fee
100%
Of your listing revenue
We are not going to put a single big savings number on this page. What that stack costs depends entirely on which vendors you'd have picked and at what plan level, and a headline figure built on our choice of comparators is marketing, not arithmetic. The itemised, sourced version — with each competitor's current list price and the date it was checked — lives on the comparison page.
Virtual page engine

50,000 listings, no post table

Most directory plugins write every listing into wp_posts and start to labour somewhere past 5,000 rows. This one doesn't write them there at all. Listing URLs are rendered from the plugin's own tables at request time, which is the entire reason a 50,000-listing install still behaves like a small site.

Rendered, not stored

Listings live in dedicated tables with proper indexes. Nothing bloats the post table, nothing shows up in the WordPress editor's post list, and a rebuild never means regenerating tens of thousands of posts.

Every level is a real page

Not a filtered view of one page. Each segment of the hierarchy has its own title, its own meta description, its own structured data and its own place in the sitemap — so each one can rank on its own.

The hierarchy
50,000
Listings per site
90+
Desktop PageSpeed
$9.99
/mo cloud hosting
Don't take the number on trust. Three live directories run at 10,000, 30,000 and 50,000 listings on ordinary shared hosting. Open any of them, click any URL, and run it through PageSpeed on Google's servers rather than ours.
Open the demos
Wizard & importers

From empty install to live directory

Activation opens a five-step wizard and a summary screen. Every step is skippable and the whole wizard is re-runnable later — useful when you add a niche or connect a service you skipped the first time.

The wizard
  • 01
    Welcome
    What the wizard is about to do, and a preview of the steps.
  • 02
    Google
    Connects Search Console, Analytics 4 and the Indexing API through the OAuth consent flow, with copy-paste guidance for each credential. Skippable — skipping just means no analytics until you come back.
  • 03
    Mapillary
    A free API key for street-level imagery. Sign-up takes about thirty seconds and there is no card involved.
  • 04
    Data import
    Upload a CSV or XLSX, or pull straight from Google Maps through Outscraper without leaving the wizard.
  • 05
    Column mapping
    Point your spreadsheet's columns at listing fields. Your headers don't have to match ours.
  • Summary
    What connected, what imported, and a link straight to the live directory.

Add a listing by hand

Free · unlimited

A form, one business at a time, with no cap on how many you add. This is the whole free version's data path and it is genuinely uncapped — build a fifty-listing local directory on it and never pay anything.

CSV / XLSX bulk import

Starter and up

Bring your own spreadsheet. The importer streams the file rather than loading it into memory, writes rows in batches, and keeps going in the background if you close the tab — a cron watchdog picks the job back up if a request is cut off. Tens of thousands of rows take minutes, not an afternoon.

Outscraper — scrape Google Maps

Growth and up

Pick a category and an area, and pull real business records with contact enrichment straight into the wizard. You pay Outscraper directly at their rates — we take no markup and never handle the money.

100 = $0.60 10K = $60 30K = $180 50K = $300

Outscraper's own list pricing, shown live in the wizard. Their rates, not ours.

After the import
Individual editor

Every field on every listing is editable — phone, website, description, socials, hours, images.

Bulk inline editing

Change a field across many listings at once instead of re-uploading the spreadsheet.

Description generator

Fills empty descriptions from the data already on the record. Templated from your fields — there is no AI model involved.

All three are in the free version, for every listing, with no cap.

Search page & listing pages

The part your visitors actually use

Two page types carry the whole front end: one search page that doubles as your homepage, and one listing template rendered for every business.

The search page

Keyword box, location selector, filter chips, and a full-size Leaflet map drawn from OpenStreetMap — not Google Maps, so there is no per-load map bill. Results paginate with a page-size control, and every card carries its badges, rating, review count, address and a click-to-call button.

Top rated 4.5+ Open now Highest rated Most reviews
And it is your homepage

The search page is a genuine, editable WordPress page containing one fixed block. Anything you add above it — hero, offer, intro copy — renders above the listings; anything below renders below. Ordinary block editor, no code, no second page builder.

One listing page, eighteen blocks

Every block below is optional and independently switchable, so a bare listing and a fully monetized one use the same template.

  1. 01Left sidebar ad slot
  2. 02Right sidebar ad slot
  3. 03Business name + breadcrumb
  4. 04Star rating + review count
  5. 05Status badgesOpen/closed, Claimed, Verified, Sponsored
  6. 06Featured imageInteractive Street View, owner upload, or generated fallback
  7. 07Leaderboard ad slot
  8. 08Quick actions
  9. 09Working hoursLive open/closed indicator
  10. 10Contact blockClick-to-call, email, website, socials
  11. 11Address + directions
  12. 12Owner CTA bannerText or image, owner-customizable
  13. 13Business highlightsFamily owned, veteran owned, licensed
  14. 14Photo galleryDrag-reorderable, plan-gated count
  15. 15Business videoSingle embed, plan-gated
  16. 16ReviewsGoogle import + on-site, moderated
  17. 17Related businessesInternal links between your own listings
  18. 18Structured dataLocalBusiness + BreadcrumbList

Interactive Street View

Imagery comes from Mapillary, which is community-contributed and free. Coverage is good along mapped roads and thin where nobody has driven with a camera; listings without it fall back to a generated image carrying the name and address.

Live working hours

Per-day opening hours with an open-or-closed indicator that reflects the visitor's current time, editable by you or by the business owner in their portal.

Your brand, one setting

Set an accent colour and a typeface once; buttons, links, pagination, the dashboard and the customer portal all inherit them. Semantic colours — call, open, closed, sponsored — stay fixed so they keep meaning what they mean. Both are free.

Schema · sitemaps · indexing · keywords

The SEO stack, built in

A directory is a programmatic SEO play or it is nothing. Everything a large URL set needs to get crawled, indexed and measured is in the plugin — no SEO plugin to configure alongside it, and no third-party data subscription.

Structured data on every level

Free
  • LocalBusiness on every listing page
  • BreadcrumbList on every page in the hierarchy
  • CollectionPage / ItemList on niche, country, state and city pages
  • WebSite + SearchAction site-wide

Emitted by the plugin itself. Nothing to map, no per-page-type template to build.

Sitemaps & crawl hygiene

Free
  • XML sitemap for engines and an HTML sitemap for people
  • Regenerates itself when listings change, and submits to Search Console
  • robots.txt visibility check, with the sitemap reference managed for you
  • Listing-level breakdown, so you can see what is actually in there
  • Name, address and phone stay identical across every page a business appears on

The indexing mesh

Publishing 50,000 URLs and waiting for a crawler to find them is how a directory dies quietly. A background job submits a batch of 150 URLs every night at 02:00, with Run now and Queue all listings when you'd rather not wait.

Google Indexing API Bing IndexNow Yandex IndexNow Seznam IndexNow Naver IndexNow

IndexNow is an open protocol, so one submission fans out across every engine that participates in it — currently around ten. Per-URL status is visible in the dashboard: queued, submitted, indexed, or never sent. Google Indexing API unlocks at Starter. IndexNow unlocks at Growth.

Analytics dashboard

Free

Search Console and Analytics 4 rendered inside WordPress, over 7, 28 or 90 days or a custom range — so you stop opening three tabs to answer one question.

visitors sessions pageviews bounce rate clicks impressions avg CTR avg position

Keyword tracker

Growth and up

A daily snapshot of your Search Console data, kept as history so you can see movement rather than a single day's numbers. Tabs for Overview, Keywords, Pages, Listings and Index Status; position distribution and ranking trend charts over 7, 28 or 90 days.

Pro adds two analyses

Opportunities compares each keyword's actual click-through rate against what its position would normally earn, which surfaces page-one and page-two terms that are underperforming. Cannibalization flags one keyword ranking two or more of your own URLs inside the top 50.

The data source is Google Search Console and nothing else. That means it is free to run and it is your real data — and it also means the tracker can only see queries your site already gets impressions for. There is no search volume, no difficulty score and no third-party keyword database, because there is no third-party subscription behind it.

Ads · subscriptions · upgrades

Four ways the directory earns

Most directory plugins hand you listings and leave the business model as an exercise. The billing side is built in — and it runs on your Stripe account, so money moves from the business straight to you. We never touch it and we take no percentage.

Five display-ad zones

Starter and up

Three in-content leaderboards and two half-page sidebars, each independently switchable and each accepting your own HTML or JavaScript — an ad network, an affiliate banner, or a house ad for a listing you're selling. Businesses that buy an ad-free listing simply don't see them.

Subscription tiers you define

Starter and up

Connect your Stripe keys, build your plans, press sync. The plugin comes with an example set — Free, Professional and Premium — and every name, price, billing interval and feature assignment in it is yours to change.

Shipped defaults, entirely editable
Free$0
Professional$24.99/mo · $249.99/yr
Premium$49.99/mo · $499.99/yr

Starter runs two subscription tiers, counting the free one — so a free listing plus one paid plan. Growth and above are unlimited. The revenue view reports total revenue, MRR, active subscriptions and payment history, alongside how many listings are unclaimed, claimed or sponsored.

The upgrade marketplace

Growth and up

Eleven listing capabilities can be attached to a plan or sold one at a time from inside the business owner's own dashboard. Seven arrive pre-priced so there is something to sell on day one; every price and every plan assignment is yours to set.

Enhanced photo gallery
Business video
Call-to-action button
Business highlights
Verified badge
Priority in search
Sponsored placement
Hide competitor suggestions
Ad-free listing
Listing analytics
Review management

The fifth one nobody counts

Every listing on your site is a citation for that business — its name, address and phone number, consistent, on an indexed page. That is a thing local businesses already pay agencies for, and it is a reason to pick up the phone that has nothing to do with advertising.

Claimable listings

A dashboard for the businesses you list

The moment a business can log in and fix its own phone number, your directory stops being a scrape and starts being a product. Owners get their own authenticated area — with no WordPress account, no access to your admin, and no seat on your site.

Claim to first login
01
Owner claims
A "Claim this listing" button on the public page opens a short form.
02
You review
Requests queue in your dashboard. Approve or reject — nothing is automatic.
03
Invite is sent
Approval emails a single-use setup link that expires after 72 hours.
04
Password set
The owner chooses their own password on that link, then it stops working.
05
They're in
A 30-day session, in their own portal, with no route into WordPress.
Five tabs, once they're in
My listing

Name, description, phone, email, website, per-day hours, seven social links, featured image, drag-reorderable gallery, video, CTA banner, highlight badges, and which reviews to display.

Reviews

Approve, hold or reject reviews on their own listing, with totals, average rating and the star distribution.

Analytics

Views, clicks and contact-button taps for their listing. Honest empty state until there is traffic to show.

Upgrades

Your catalogue, at your prices. This is where a free listing turns into a paying one without you sending an invoice.

Billing

Current plan, total paid, payment history, and a route to upgrade — handled by Stripe end to end.

Separate from your WordPress users

Portal accounts live in their own table, not in wp_users. A listed business is never a WordPress user, never appears in your Users screen, and cannot be escalated into one. Sessions are a hashed 30-day token; the forgot-password flow returns the same response whether or not an address exists, so it can't be used to test which businesses have signed up.

It looks like your directory

The portal inherits the accent colour you set in settings, so the business owner stays inside your brand from the public listing all the way through to the payment screen.

You stay the moderator

Claims are approved by you. Reviews can be moderated by you. Your dashboard keeps the customer list, the plan filter and the counts of free versus paying accounts — the owner manages their listing, not your directory.

Claimable listings, the customer portal and Stripe billing all unlock together at Starter. The free version is a complete, publishable directory — it just isn't a business with customers in it yet.
Opt-in · niche-isolated

The Network Hub

Every directory built on this plugin can publish one curated /partners/ page listing five to twenty directories in the same niche. Roofers link to roofers. The links point partner page to partner page — never homepage to homepage, never into someone's listing.

Five checks before you're in
Your site respondsA directory nobody can reach helps nobody.
Your /partners/ page returns 200The reciprocal side has to exist before the link does.
A verification marker is presentProves the page is genuinely yours and genuinely served.
At least ten published listingsKeeps empty shells out of the network.
A heartbeat in the last seven daysAbandoned directories drop out on their own.
Why this isn't a link scheme

The reasonable first reaction to "a backlink network" is suspicion, so here is the difference stated plainly rather than buried.

  • Topically coherent. Niche isolation is enforced — a roofing directory is never listed on a dentistry one.
  • Editorial, not site-wide. One curated page with a limited number of links, not a footer dump on every URL.
  • Real sites. Participants are working directories full of genuine business records, because that is what the plugin builds.
  • Opt-in and self-owned. Nobody controls the network centrally. You join, and you can leave.
  • Quality-gated. The five checks above run before anyone is listed, and keep running afterwards.
Network Hub unlocks at Growth and is opt-in even then. Owners find each other through the partner table in the dashboard and a Discord community. The value compounds with the number of participating directories, which is exactly why it is not in the entry tier.
How the network works
The whole matrix

What's free, and what isn't

Every row below mirrors the tier map in the plugin's own code. The free version on WordPress.org has no listing cap, no site limit and no locked buttons — it is a complete directory, not a trial. What you buy is scale, monetization, advanced SEO and the network.

No cap
Listings on free
No limit
Sites on free
No trial
Because it doesn't expire
Free version Growth — where most operators land
Capability Free Starter Growth Pro Agency
Price
One-time $0On WordPress.org $299 $549 $899 $1,499
Annual alternative $129/yr $199/yr $329/yr $549/yr
Scale & sites
Listings UnlimitedAdded manually 10,000Bulk import ceiling 30,000 50,000 50,000 per site
Sites UnlimitedGPL, no activation system 1 1 1 Unlimited
Staging site included Yes Yes Yes Yes Per site
Setup & data
Setup wizard Yes Yes Yes Yes Yes
Add listings manually Unlimited Yes Yes Yes Yes
CSV / XLSX bulk import Yes Yes Yes Yes
Column mapping Yes Yes Yes Yes
Outscraper in-wizard scrape YesYou pay Outscraper directly Yes Yes
Individual + bulk editing Yes Yes Yes Yes Yes
Frontend
Virtual page engine Yes Yes Yes Yes Yes
Faceted search + map Yes Yes Yes Yes Yes
Listing page (18 blocks) Yes Yes Yes Yes Yes
Interactive Street View Yes Yes Yes Yes Yes
Live working hours Yes Yes Yes Yes Yes
Reviews (import + on-site) Yes Yes Yes Yes
Branding
Accent colour Yes Yes Yes Yes Yes
Typography Yes Yes Yes Yes Yes
"Powered by" credit Off by defaultOpt-in for everyone, never forced Off by default Off by default Off by default Off by default
SEO & indexing
XML + HTML sitemaps Yes Yes Yes Yes Yes
Schema on all URL levels Yes Yes Yes Yes Yes
Google Indexing API Yes Yes Yes Yes
IndexNow YesBing, Yandex, Seznam, Naver Yes Yes
Analytics & keywords
Search Console + GA4 Yes Yes Yes Yes Yes
Keyword tracker — base tabs YesOverview, Keywords, Pages, Listings Yes Yes
Opportunities + cannibalization Yes Yes
Portal & monetization
Claimable listings Yes Yes Yes Yes
Customer portal (5 tabs) Yes Yes Yes Yes
Stripe billing Yes Yes Yes Yes
Owner-set subscription tiers 2Counting the free tier Unlimited Unlimited Unlimited
5 display-ad zones Yes Yes Yes Yes
Upgrade marketplace Yes11 features, 7 pre-priced Yes Yes
Sponsored placement Yes Yes Yes
The network
Network Hub access YesOpt-in, verification-gated Yes Yes
Support
Docs + community Discord Yes Yes Yes Yes Yes
Email support Yes Priority Priority Priority
Direct Discord access Yes Dedicated queue
Roadmap input Yes Yes
Swipe the table sideways to see every tier →
Upgrading

You pay the difference, never the full price again. Starting on Starter costs nothing extra if you later need Pro.

At the limit

A warning appears at 95% of the import ceiling, and new imports stop at 100%. Listings you already have keep serving — the front end never degrades.

Guarantee

Lifetime updates on one-time licenses, and 30 days to change your mind on any paid tier.

See full pricing Compare with GeoDirectory & Directorist
Read this before you buy

What it doesn't do

A feature page that only lists features is a sales document. These are the real edges of the product as it ships today. If one of them is a dealbreaker for you, we would much rather you found out here than after paying.

There is no AI in it
No AI writing, no AI categorisation, no AI anything. The description generator composes text from the fields already on the record using templates, not a language model. Nothing here produces AI-written copy; if you want that, it is yours to add.
The keyword tool only sees what you already rank for
It reads Google Search Console, which reports queries your site has impressions for. It cannot show search volume, keyword difficulty or competitor keywords, because there is no third-party SEO data source behind it. It is a rank tracker, not a research tool.
Street-view coverage is patchy outside cities
Mapillary imagery is contributed by people who drove there with a camera. Dense in cities, thin in rural areas. Listings without coverage get a generated fallback image rather than an empty box, but it isn't a photo of the building.
English, and US-shaped
The interface is English only. There is no translation layer and no right-to-left support, and the address and location handling assumes a US-style hierarchy. It will run on non-US data; it just wasn't designed around it.
The public can't submit listings
Listings come from your import or from you adding them. A business can claim an existing listing, but there is no front-end "add your business" form for people who aren't in the directory yet.
No bookings or reservations
Listings can carry a booking link to whatever the business already uses. There is no native scheduling, availability or reservation module, and none is being built into this version.
Chains and franchises are just multiple listings
There is no parent-and-branch model. A business with twelve locations is twelve separate listings, which is usually what you want for local SEO but is not multi-location management.
The admin works on a phone, but it isn't designed for one
The dashboard is responsive and usable on a tablet. Bulk editing fifty listings on a phone is not an experience we would recommend to anybody.
A 50,000-row import takes minutes
Not seconds. It runs in the background and survives a closed tab, but anyone promising an instant fifty-thousand-listing site is describing something other than writing fifty thousand rows to a database.
Accessibility is a goal, not a certificate
We build towards WCAG 2.1 AA and take reports seriously. We have not been independently audited, so we are not going to claim conformance.
You bring your own keys
Google, Mapillary, Stripe and Outscraper are all connected with your own credentials. Nothing is proxied through us, which means nothing breaks if we do — and also means you do the connecting.
It is one person's product
TurnKey Directories is built and supported by its founder, not a company with a support floor. That means direct answers and fast fixes; it also means there is no 24/7 desk, and we are not going to pretend otherwise.

Questions about the feature set

Is the free version really uncapped?
Yes, and not as a gesture — WordPress.org rejects plugins that ship locked features or expiring limits, so there was no version of this where the free plugin could be a trial. It has no listing cap, no site limit, no countdown and no greyed-out buttons. What it doesn't have is bulk import, monetization, the advanced indexing and keyword tools, and the Network Hub. Those are additional capabilities, not restrictions on what's already there.
Will it work with my theme and my existing plugins?
It should. The directory renders its own templates on its own URL tree rather than inheriting your theme's layout, so it doesn't need a specific theme and doesn't fight the one you have. It sits alongside a blog, WooCommerce, and whatever else is already installed — you can add a directory to an established site or start a fresh one.
Do you take a percentage of what my listed businesses pay me?
No. It is your Stripe account, connected with your own keys, and the money goes from the business to you without passing through us. We have no way to take a cut and no interest in building one — the license is the business model. Stripe's own processing fees still apply, because they're the ones moving the money.
What do I actually need besides the plugin?
WordPress on decent hosting — the demos run on $9.99/month cloud hosting at 50,000 listings. A Google account for Search Console, Analytics and the Indexing API, all free. A Mapillary key for street-level imagery, also free. Stripe only if you intend to charge businesses. Outscraper only if you want it to fetch the data for you instead of bringing your own spreadsheet. Every one of those is your account with your keys.
One-time or annual — what's the actual difference?
The feature set is identical; only the payment shape differs. One-time buys that tier with lifetime updates and is the flagship. Annual is the lower-commitment route, priced so it takes roughly three years to reach the one-time figure. If an annual plan lapses your listings keep serving — the admin and portal lock until you renew, rather than your site going dark.
Can I move a license to a different site?
Yes, yourself, without emailing anybody. Activate on the new site, deactivate the old one, done. Every tier also includes a staging activation, detected automatically from the subdomain, so a staging copy never eats your production slot.
Which tier do I need?
Start free if you're finding out whether you like building directories. Take Starter when you have a spreadsheet to import and want businesses to be able to claim and pay. Growth is the one most operators land on, because it's where the Network Hub, IndexNow, Outscraper and the keyword tracker appear. Pro is for 50,000 listings and the advanced keyword analyses. Agency is Pro across unlimited sites, and pays for itself at two. Upgrades cost the difference, so guessing low is cheap.
Where can I see all of this running?
Three live directories at 10,000, 30,000 and 50,000 listings, on the demo hub — real records, real URL structure, open to browse without signing up. Or install the free plugin and add a handful of listings by hand; the whole structure appears on your own domain within an afternoon.

Reading about it only
gets you so far.

The free version is the whole engine. Install it, add a few businesses by hand, and see the URL structure, the schema and the search page appear on your own domain. Upgrade when you have a spreadsheet to import.

No listing cap on free One-time or annual 30-day money back