Aha StudioAI workers
Guides

BuildMyDirectory

BETA

A real directory for any niche and place: listings from Google Maps data, a page for every feature people search for in every city, and nothing invented.

12 min read30 stepsUpdated October 17, 2026

Before you start

  • A niche and a placeA niche, in plural (hotels, dog groomers, wedding venues), and a place: a city ("Gatlinburg, TN") or a whole state ("Tennessee").
  • A directory nameOptional: a name for the directory.
  • Your own listOptional, on a plan: a CSV of businesses you already have. Each row is matched to Google Maps and added to the directory.
  • Somewhere to publishTo publish: a WordPress site with an Administrator or Editor login, a free Netlify account and a domain you own, GitHub, Cloudflare or your own cloud storage. You can also download the whole directory.
Sign in first. A directory you build while signed in on your plan is saved to your account and can list up to 1,000 businesses; the free demo builds 25.
PART 01

Optional: find a winning directory

0 of 3 done

The first card, Find a winning directory (BETA), shows which directories already win in your niche before you build. It uses part of your monthly included amount.

  1. Scan GoogleType the Niche, the City or state and the Country, then press Scan Google. It searches Google, keeps the sites that look like directories and reads their traffic estimates from DataForSEO. An unknown number shows as a dash, never a guess.
  2. Read the resultsEach directory gets our opportunity score (How we scored it explains it), its stats, the reason and the search that found it. Find easy keywords lists the keywords it ranks for that are easiest to win.
  3. Build a better onePress Build a better one on a directory to fill in the form below with its niche and place.
PART 02

Build your directory

0 of 6 done
  1. Open BuildMyDirectoryAt buildmydirectory.ahastudio.net, or press Start something new on your account page and choose Directory.
  2. Fill in Niche and City or stateNiche and City or state are both required. Pick the Country, and add a Directory name if you like. Or type it in a sentence under Tell it in your own words and press Fill the form, then check the fields.
  3. Optional: who it is forIf you build for clients, pick the client under For (your client profiles are under Your account, Clients): the work uses its brand colour, voice, call to action and lead notifications, and is saved under that client in Your work. The picker shows once you have saved a client.
  4. Choose how many listingsUnder Listings: 25, 50, 100, 200, 500 or 1,000. The free demo builds 25; more come with a plan, and a big directory reads the websites in batches while the page shows how far it has got. Tick Skip the search-volume check (cheaper, builds every page with enough listings) if you like; the trade-off is that some pages may be about things few people search for.
  5. Import your own list (optional)On a plan, open Import your own list: press Choose a CSV file or paste the rows, match your columns, and the button becomes Find real businesses and import my list. Each row is matched to Google Maps; the Listings tab then shows how many matched, merged, were kept from your list and were skipped.
  6. Press Find real businessesWatch it work: matching your niche to Google Maps categories, finding the place on the map, pulling real listings from Google Maps data, choosing the features to look for, reading each business's own website for proof, checking what people search for, and planning the pages. You can close the page and come back to the same link.
PART 03

Review the pages

0 of 8 done
  1. Pages tabThe plan is grouped into Home, Places and Feature pages, each with how many listings it holds and how many searches a month it gets (or No search data). Untick Keep to drop a page. Pages left out, and why lists the pages it chose not to make.
  2. Listings tabEach business shows its Google rating and whether its website was read. Open its features to see the proof: the sentence from its own website, or Google's amenity list, description or review mentions, each labelled with where it came from. Tick Leave out to remove a business. Listings left out, and why shows what the agent dropped.
  3. Features tabEvery feature the agent looked for, with how many listings show proof of it. Untick Use to turn a feature off.
  4. Can a new directory rank?This card (BETA, SERP Gap) checks each main search: who holds page 1 (big directories such as Yelp, or weak sites with a Domain Rating under 30), and a verdict of Winnable, A stretch or Too strong. Show page 1 opens the table, every number with its source. When the main search is too strong, it suggests tighter angles (one city plus one feature). It never stops the build. Check again reruns a check that could not finish.
  5. Images tabReal photos come first: Google's, then the main photo from the business's own website, then free Wikimedia Commons photos (Find free photos, credited). For listings with none, the Make images button (it shows how many) makes AI illustrations on your own OpenAI key: a generic scene of that kind of place, never the business, labelled as an illustration on every page. Without a key, press Open in ChatGPT on a listing and Upload image with the result.
  6. Your code tabHead code, Every page and Listing pages only: analytics, a chat widget, a booking button, an opt-in form or a review badge, pasted once and added to your published directory exactly as pasted. The preview never runs it.
  7. Press Build directoryThis previews the directory. Pick any page from the list, or Open in a new tab. Back to the review takes you back to change it. Besides the home, place, feature and listing pages, the directory has an About page and an Add your business page.
  8. Grow it laterOn a finished directory on your plan, Add another state or city adds a place (Add this place), and Add businesses from your list imports another CSV, up to the most listings your plan allows.
PART 04

Keep and publish

0 of 6 done
  1. Keep your directoryBuilt it before you signed in? Sign in and press Add to my account. Then Download the directory (ZIP) gives you every page, ready for any host.
  2. Connect WordPressIn Publish to your WordPress site, create an application password in WordPress (Users > Profile > Application Passwords, type "Aha Studio", press Add New Application Password), paste it with your site address and username, and press Connect site.
  3. Choose where and howUnder Where on the site, pick A site just for this directory or Under one address (for example hot-tub-hotels). Under Send pages, pick All as drafts now (recommended) or Publish gradually, 3 to 50 pages a day starting tomorrow: the home page and places first, then tag pages by searches, then listings. Under Claim and add-your-business forms, pick the Aha Studio lead inbox or My own form shortcode.
  4. Install the free Aha Studio Connector pluginUpload it under Plugins > Add New > Upload Plugin to set meta descriptions automatically.
  5. Press SendThe button shows the number of pages and your site name. Every page arrives as a nested page with the links between them pointing at your own site. Changes later go out with Publish again (updates the same pages). Pages you made yourself are never changed.
  6. Or deploy to NetlifyIn Netlify, create a personal access token (User settings > Applications > Personal access tokens), paste it, press Connect Netlify, then Deploy to Netlify. Deploy again updates the same site.
PART 05

Or publish to GitHub, Cloudflare or cloud storage

These sit under the Netlify card once the directory is built and on your account.

  1. 1Connect GitHub once Under Publish to GitHub Pages (BETA), create a fine-grained token in GitHub (Settings > Developer settings > Fine-grained tokens) with Contents and Pages read and write, plus Administration read and write if Aha Studio should create the repository. Paste it and press Connect GitHub.
  2. 2Publish Pick the Repository (new or existing) and the Branch (gh-pages holds only the directory), add Your own domain (optional) if you have one, and press Publish to GitHub Pages. It goes up in one commit; later, Publish changes sends only what changed.
PART 06

Leads, ads and visitor stats

0 of 3 done
  1. Claim and add-your-business requestsWith the Aha Studio lead inbox picked for the forms, every claim and Add your business request comes to you as a lead.
  2. All your leads in one placeEvery lead from every project is also in Your account, Leads: filter by AI worker, project, date or failed delivery, open a lead for every field and its delivery log (with Retry for a failed push to your email platform), set its follow-up status, add private notes, and download the filtered list as CSV.
  3. Sell ad spots and count visitorsEvery site you publish is listed under Your account, Ads and stats (BETA). Switch on Ads and Stats for a site, set up your Ad spots, make banners in the Banner maker (design one there, make an AI image on your own OpenAI key, or upload your own), and read Ad analytics and Visitor stats. A new spot goes live the next time you publish the site it shows on.
PART 07

Put it on your own domain

0 of 4 done

After deploying to Netlify, the Your own domain card puts the directory on a domain you own, with HTTPS.

  1. On the My domain tabType your domain and press Connect. This adds it to your Netlify site.
  2. Add these two recordsAdd them in Cloudflare (or any DNS host), and delete any other A or AAAA records on the same names first. In Cloudflare, set each one to DNS only (grey cloud), not Proxied.
    AName @, content 75.2.60.5, DNS only
    CNAMEName www, content your site's netlify.app address (the card shows it with a Copy button), DNS only
  3. Press Check and secureIt checks the records and asks Netlify for the HTTPS certificate. It usually takes a few minutes once the records are visible. When it shows HTTPS: active, the sitemap, robots.txt and canonical links use your domain.
  4. Building several directories?Choose Use a subdomain of and set one domain up once with A * 75.2.60.5 and A @ 75.2.60.5, both DNS only. Every new directory can then go live on its own subdomain with no DNS changes.
PART 08

Your limits

ON YOUR PLAN10 directories a monthEach with up to 1,000 listings.
FIRST 14 DAYS1 directoryOf up to 50 listings. See the refund policy.

Your plan also includes a monthly amount of AI work, shared by all your AI workers. When this month's is used, the AI work carries on with your own AI key: the provider and model you choose on your account page under AI and data keys, Text and reports. Without a key, it resumes on the 1st. Google Maps and search data have their own monthly limit, which also resets on the 1st.

PART 09

If something goes wrong

Still stuck? Email support@anthonyhayes.me or open the help desk.
Ready to build?Type a niche and a city or state, choose how many listings, then press Find real businesses.Open BuildMyDirectory