For a practice with an office and a season

Local SEO for CPA firms

What makes your practice show up when someone nearby searches for a CPA, what is probably wrong with yours right now, and why all of it has to be finished before January.

No jargon, and nothing you have to connect to read it. The checks on this page are the ones Verand actually runs, in the words it actually uses.

01Why the work that wins you April clients has to be done in the autumn
02The eight things worth checking on your own website, and what a failure looks like
03Why the page about your office is advertising under the Code you signed up to
Local SEO · Overview
Sample
Your practice detailsConfirmed
Name
Example Tax & Advisory CPAs
Phone
(555) 010-0147
Directory category
Not chosen

Address, city and hours read too. Found on /contact and 2 other pages, in your page text and your page code. Nothing connected, nothing extra billed.

Local presence
5 of 8 checks passing · 3 to fix
On your site 5/8
Business Profile 4/6
What to fix (3)
Your phone number is the same everywhereTwo numbers on your own site. One of them only answers between January and April.Critical
Your pages say you are a business at an addressNothing a search engine can read directly. One click and Verand writes it.High
Your opening hours are statedWritten in a sentence, nowhere in your page code. Ranked low. Read the next section.Low
Name, address and phone are all presentPass
You have a contact pagePass
Your site points at your Google listingPass
Your map coordinates are statedPass
The area you serve is statedPass

An example, not a real practice. The wording, tabs and score line are the ones the product uses; the findings are made up so you can see the shape of one.

Start here

Almost nobody searches for a CPA in September. Then January arrives.

Every other local business gets an even year. You do not. Your searchers arrive in one narrow window, in a hurry, and most call one of the first three results and stop. What decides which three was settled months earlier, which makes this a calendar problem before it is a marketing problem. A practice that starts tidying its listing in February has already sat out the quarter that was going to pay for it.

cpa near me
The block of local results at the top
Sample
1A nearby practiceOne address, one number, hours published
2Another nearby practiceOne address, one number, hours published
3Your practiceTwo numbers on your own site, hours nowhere a machine can read
The block is short. Everything below is about being in it.
Match

Does anything say what you do?

A tax preparer, a bookkeeper and a licensed CPA are three different answers, and the searcher usually wants one in particular. Your listing carries a single primary category. Both it and your own pages have to say which you are in a form a machine can read rather than infer.

Mostly fixable in an afternoon.
Distance

How close are you to them?

You cannot move the office and no tool can. You can make sure the address every source holds is right to the character, including the suite number half your pages leave out.

Not fixable. Only get it right.
Prominence

How sure is Google that you exist?

It counts independent sources that agree on your name, address and phone, and reads reviews from real clients. Agreement is the signal, and a practice that has run a seasonal second line for years usually has more disagreement than it knows.

This is where the work is.
The awkward part: the sources that have to agree include your own website, and that is usually where the disagreement starts. The overflow number from two seasons ago, still on a team page. A suite written two ways. It takes an afternoon to fix and it is free to look.
The audit

Eight checks on your own website, and the one ranked lowest is the one that will cost you April.

Verand already reads every page of your site on a schedule. Your office details come out of that same read: nothing to install, nothing to connect, nothing on top of the crawl that was happening anyway.

CriticalCheck 2 of 8

Your own site shows two different phone numbers

What we found
(555) 010-0147  on  /contact
(555) 010-0192  on  /tax-season
Pick one, use it everywhere.
Why it matters
Directories treat each version as a separate business, so your standing gets split between two half-practices and sometimes both get buried. This has to be right before any listing work, or the wrong number is copied into dozens of places, each needing its own correction.
Doing it yourself
An hour or two to find and correct every instance, then a re-check.
Who fixes it
You A seasonal overflow line is a real business decision and Verand has no view on it. It names the pages; you decide which number the world gets.
LowCheck 6 of 8

Your opening hours are written down, but only in a sentence

What we found
“Monday to Friday, 9 to 5” on /contact, in your page text. Nothing in your page code states them, so nothing outside your site can read them.
Why it matters
For a dentist this is a low-severity tidy-up, which is why the product ranks it low and we will not pretend otherwise. For you it is the field that changes twice a year. A practice that opens Saturdays from February and says so nowhere a machine can read is telling the busiest searchers of its year it is shut.
Doing it yourself
Thirty minutes to write the block, then an edit every time the season turns, on the two dates you least have a spare half hour.
Who fixes it
One click, Verand It writes hours into the entry when it knows them, taking them from your Business Profile if that is the only place they live. If nobody has stated them anywhere it leaves the field out and says so, rather than guessing at nine o’clock.
The entry it writes, if you ever want to look at it
Generated
{ "@type": "AccountingService", "name": …, "address": { … }, "telephone": …, "geo": { … }, "openingHoursSpecification": [ … ], "areaServed": [ … ], "sameAs": [ … ] }
One entry, not five fragments. Gaps are left out, never guessed: an invented opening time is a statement about a real business, made to a search engine, in your name.

The other six: name, address and phone present; a contact page; a link from your site to your Google listing; map coordinates; the area you serve; and whether more than one address is showing up. Each comes back with the same four lines, and nothing sits behind a button.

The tension nobody names

You are a local business and a remote one, and both are true at once.

Half your clients could not find your building and have never tried. The other half chose you because you are eleven minutes away and wanted to hand over a carrier bag of receipts. Local advice assumes you are only the second kind; content advice, only the first.

The part of you that is local
  • Someone within driving distance searching in Februarythe map block
  • The office, the hours, the parking, the person on the phoneyour listing
  • Independent sources agreeing on one addresscitations
The part of you that is not
  • A founder three states away with a K-1 problemordinary search
  • What you have written about the thing they are worried aboutyour articles
  • Whether an assistant repeats your answer when askedAI search
The trap is the middle: a page for each of forty towns, most naming places nobody at the firm has worked in. That is a thin-content problem with a map on it, and a board can read it as a claim about where you practise. State the area you genuinely serve, in the one field built for it, and put the effort into the writing.
The part every other local tool skips

A page about your office is advertising, and you signed up to rules about that.

There is no gentler rule for the page that lists your address. If it exists to bring you clients it is advertising, and the AICPA Code holds it to the same standard as anything else you publish. If it mentions representing anyone before the IRS, Circular 230 reaches it too. That would be a footnote, except that the sentences which get a CPA in front of a board are the ones people write on exactly that page, in January, in a hurry.

Location page · draft · checks run before anyone can publish
2 stopped

“Walk in this season and pay nothing unless we get you a bigger refund.”

Stopped

A fee tied to the size of the refund on an original return is the one pricing sentence you are not allowed to write, and it sits on a lot of seasonal pages because it converts. The page does not move until the fee is quoted fixed or hourly.

“Our founder spent eleven years at the IRS, so we still know who to call.”

Stopped

The first half is a credential and belongs on the page. The second says you can lean on somebody, which is a claim of influence, and those are not allowed however lightly meant. Keep the eleven years, lose the phone call.

“Book a risk-free review of last year’s return.”

Asks you

This one you can release, but only by writing down why, and the note stays attached to the page. The ones you cannot release are a guaranteed refund or result, “you can’t lose”, and a missing disclaimer.

cpa-bc-002-contingent-return-fee cpa-bc-005-implied-irs-influence base-ymyl · 6 blockers The rule ids, if you or your counsel want to look them up.

Stops, and will not move

No reading of the sentence is acceptable. No override, no exception, on any plan.

  • fee only if we get a bigger refund
  • connections inside the IRS
  • guaranteed refund
  • guaranteed results
  • you can’t lose
  • a missing disclaimer

Stops, and asks you

A legitimate professional use exists and a machine cannot tell the difference. You release them with a written reason that stays attached to the page.

  • risk-free
  • zero-risk
  • no-risk
And one that only flags. “The best CPA firm in the county” comes back marked for review rather than stopped: some state boards read that superlative as misleading, most do not, and it is not a federal matter. You are told why, and you publish anyway if you want. If your board is a strict one, add the phrase as a banned claim of your own and it stops the page like any other.

Every local SEO tool will happily write that office page for you. None read it back against the Code you are held to. That is the only reason this page exists. What else on your site counts as advertising is a longer question, and a page of its own.

Validated against AICPA and Treasury rules. AI-researched and operator-reviewed. Your counsel confirms applicability to your practice and your state board. Not legal advice.

Where Verand comes in

Four things happen to your office, and only the last one costs money.

You have seen the diagnosis, which Verand gives away, and the gate, which nothing else in this category runs. Here is the whole of it, in order, with the honest status of each.

01

It reads your office

Out of the pages you already publish, inside the crawl that was running anyway.

Running · no extra cost
02

It hands you a list

Eight checks, each saying what is wrong, why it matters and what fixing it yourself takes.

Running
03

It writes, and it gates

The machine-readable entry in one click. The page goes through the same checks as everything else you publish.

Running
04

It gets you repeated

Your details submitted, on purpose, to the places other sources copy from.

$500 once, per office
Step 04

Getting your details repeated, on purpose.

Search engines decide a business is real by counting independent sources that agree about it, and most practices leave that to chance. This is how you stop: five wholesalers and around fifty directory listings, one submission per office, $500, and nothing goes out until your own details are complete, consistent, and you have read every character.

We could call the whole ninety-four-site pool “established directories, selected for your category”. About eighty are not that, and you would find out the moment you clicked three. So here is the real split.

One office · what the $500 covers
$500 once
Five wholesalers. Submit once, they feed hundreds of downstream sites, apps and in-car navigation we could never reach one at a time.
Data Axle Foursquare Neustar GPS Network YP Network
About a dozen directories people genuinely use.
Business Profile Apple Maps Yelp YellowPages Manta Hotfrog MerchantCircle Brownbook CitySquares Cylex N49 Tupalo
The rest of the fifty comes out of a pool of about eighty small directories nobody browses.
zipcode2business freelistingusa bizhwy and about 77 more
They earn their place for one reason: each is another independent source saying the same thing. Volume of agreement is the signal, not traffic.

Two rows carry initials rather than a mark. GPS Network is a distribution network rather than a site you can visit, so it has none, and neither does most of the long tail, which is the point of that row.

On timing, which is the argument of this page: a submission is not a switch. The wholesalers pass details down to sites that refresh on their own schedules, and the ones that matter take weeks to settle. Do it in the autumn and it is done before anyone looks. Do it in February and you are paying to be found in a season already over.
Business Profile · six checks
Live
Example Tax & Advisory CPAsMatched by phone
Category
Not set
Rating
4.8
Reviews
4
Hours
Published
Phone
(555) 010-0147
Address
128 Example Street

Read from the public listing. No sign-in, so nothing to authorise and nothing to revoke.

Profile checks · 4 of 6 passing
We found your listingMatched by your website address, then confirmed against your phonePass
A primary category is setNone set. Accountant, tax preparation service and CPA are three different answers.Critical
Your listing and your website agreePass
Opening hours are publishedPass
Your listing links back to your sitePass
Review volume4 reviews. That is thin for local ranking.Medium
On reviews: ask real clients after real work, one at a time, and the fortnight after a return goes out is when they are most willing. Never buy them, never incentivise them. Verand will not write a reply to a review that did not come from a real client.
Your Google listing

It reads your listing. It never touches it.

There is no sign-in for this one, and there cannot be. It reads only what any member of the public can see, so there is nothing to authorise and nothing to revoke.

A listing is only accepted as yours when your own website address, phone or street confirms it. If nothing lines up you get the candidates and pick, rather than Verand attaching one that might belong to the unit next door.

Which means the seasonal hours stay yours. The field that most needs editing on the first of February is one Verand will never write to. It does not post, reply to a review, or touch a single value. The deeper look inside your own listing, the kind that needs you to connect it, is not built: it waits on an approval from Google we have not got. When we say the listing check is live, we mean the public one.
If you work out of more than one address

A second office means two of everything.

Not one bigger version of everything. Each address has one Google listing, one set of directory entries and one page of its own, and each page is checked against the rules of the state that office is in, which for a practice licensed in two is not a detail.

What the crawl saw
Sample
1128 Example Street, Suite 3004 pages
2128 Example St, Ste 3002 pages
39 Example Road, Example Town1 page
Three addresses, and Verand will not say which are offices. One and two are almost certainly the same suite typed two ways. Three might be a second office, a seasonal desk, or a client address quoted in an article about a nexus question. Guessing would tell a two-office practice to delete one of its offices.
Detection is live. Clustering them into offices is not built, on purpose.

Made-up addresses, in the range reserved for examples. The three-variant pattern is the common one.

Office oneChecked

Example Tax & Advisory CPAs128 Example Street, Suite 300 · (555) 010-0147

  • Its own Business Profile1
  • Its own directory submission$500
  • Its own page, its own checks8 + 6
  • Gated against its own state boardPass
Office twoYou add it

Added by hand, once9 Example Road · (555) 010-0163

  • Its own Business Profile1
  • Its own directory submission$500
  • Its own page, its own checks8 + 6
  • Gated against its own state boardits state
And one thing Verand will not do here: guess. It tells you it can see more than one address and stops, because telling three real offices apart from one address typed three ways is guesswork, and confident wrong advice is worse than none. You add the second office by hand, once, and it is checked like the first.
Straight answers

What runs today, and what does not.

Running nowLive

  • Reading your office out of your own pages. Inside the crawl already running. No extra cost, nothing to connect.
  • The eight on-site checks and the list they produce. Every item carries what is wrong, why it matters and what doing it yourself takes.
  • The Google listing check. Six checks on the public listing, on its own tab, no sign-in.
  • Writing the machine-readable business entry. One click, gaps left out rather than invented.
  • The gate on the page itself. The same checks your articles go through, on your location page.
  • Directory submission. $500 once, per office. Nothing is sent until you have read every character.

Not builtHonest

  • Anything that writes to your Google listing. No posts, no review replies, no edits to any field, your season hours included.
  • The deeper look inside your own listing. The one that needs you to connect it. It waits on an approval from Google we have not got.
  • Working out on its own that you have two offices. Verand will say it can see more than one address and stop there. You add the second by hand.
  • Writing your contact page for you in one click. A contact page is a whole published page rather than a block of code, so it goes through the normal writing and publishing route.
  • Reminding you the season is coming. There is no seasonal prompt in the product. The calendar argument on this page is yours to act on.
Before you run it

The four things partners ask first.

It is autumn and I am quiet. Is it too early to bother?

It is the only sensible time. Your own site can be corrected in an afternoon whenever you like, but the part that depends on other people settles over weeks. Start in the autumn and January finds a practice whose details already agree everywhere. Start in February and you are buying visibility for a quarter that is nearly done.

We run a second phone line only during the season. Is that the problem?

The line is not the problem. Publishing both numbers as though each belongs to the business is. Directories treat two numbers as two businesses and split your standing between them. Pick the one number that goes everywhere public, handle the seasonal line inside your own phone system, and the audit stops complaining.

Will it write the page about my office?

Yes, and it goes through exactly the same checks as every other page Verand writes for you, the advertising rules included. Nothing publishes on its own. It arrives as a draft, and someone at the practice presses publish.

Most of my clients are nowhere near me. Does any of this apply?

Partly. The eight checks cost nothing either way, because they run inside a crawl you already pay for, and if you have a building and a phone the tidying is worth an afternoon. The $500 submission is only worth it if walk-in distance is a real part of how you get clients. If it is not, the same money spent on what you publish will do more.

Find out which of the eight your practice is failing.

The diagnosis is free and none of it is blurred. Every item says what is wrong, why it matters and what fixing it yourself takes, whether or not you ever ask us to do it.

Run the checks on your site See pricing →

Nothing publishes without someone at your practice pressing publish. Validated against AICPA and Treasury rules; AI-researched and operator-reviewed. Not legal advice.

Verand

Content built to rank in Google and get cited by ChatGPTPerplexityGeminiClaude, with every claim checked before it goes live.

support@verand.ai

© 2026 Verand. All rights reserved. TermsPrivacyAI policyAccessibilitySecurity
Not legal advice. Compliance packs are AI researched and operator reviewed.