Generative Engine Optimization agency in San Francisco
For San Francisco firms whose city record, permits and neighbourhood rules are public data, and whose buyers ask questions only that record can answer.

Photo: Luke Price from Rotterdam, Netherlands, CC BY 2.0, via Wikimedia Commons
Most cities keep their business register in a back office. San Francisco puts it online and refreshes it every day. The Treasurer & Tax Collector's Registered Business Locations dataset on DataSF lists each registered location, one row per site, along with a NAICS code the business picked for itself. Anyone can download it, and so can the crawlers and directories that feed answer engines.
That changes what being findable means here. If your website says you opened in Hayes Valley and the city's record still shows a closed SoMa address, an assistant asked about your street has two versions of you to reconcile. If you put down the wrong industry code years ago, the city's own data files you under it.
San Francisco buyers also ask questions that only public records can settle. Can this contractor handle a Department of Building Inspection permit in the Mission? Is a chain café even allowed to open on this block? The firms engines name for those questions are the ones that have published the answer themselves.
At a glance
Audit what the city says about you
We pull your rows from the city's registered-business data and compare the name, address, open locations and industry code with your site and listings. Every mismatch gets a fix and a named owner.
Turn permit history into proof
For builders, architects and fit-out firms, the Department of Building Inspection's permit data is a public record of real work. Project pages that name the neighbourhood and the permit type line up with it.
Answer the rule-bound questions
Formula retail controls, neighbourhood commercial districts and the city's permit steps are what many San Francisco buyers ask about. A plain page explaining how you handled them is easy for an engine to quote.
Let the right crawlers in
A site that blocks OpenAI's search crawler doesn't appear in ChatGPT search answers, by OpenAI's own account. We check your robots rules before anything else.
The city's register is a source, not a formality
The Registered Business Locations dataset is published by the Office of the Treasurer & Tax Collector and updated daily. Its description is blunt about two things worth knowing. The NAICS code is self-reported and not verified by the office. And locations are marked "Administratively Closed" if the business hasn't filed or communicated with the office for 3 years.
Both details can work against you without your noticing. A design studio registered years ago under a generic consulting code sits in the city's data as a consultancy. A firm that moved and never closed its old location shows two addresses. Directories and data aggregators can draw on public registers, so the error does not necessarily stay on DataSF.
None of this is hard to fix. It just has to be checked, and most firms have never looked.
Permits as a public record of your work
DataSF also publishes the Department of Building Inspection's building permit applications, uploaded nightly, and the department's permit tracking system shows addenda, routing and inspections for each one. For a contractor, an architect or an interior fit-out firm, that is a public trail of projects with addresses attached.
An engine asked for "a contractor who has done seismic retrofits in the Sunset" has a better chance of naming you if your site describes Sunset retrofit projects in plain sentences, with the neighbourhood, the building type and the scope. We help you write those project pages from your own records, without publishing anything a client hasn't agreed to.
Neighbourhood rules buyers ask about
San Francisco Planning defines a chain store, or formula retail use, as one with eleven or more other locations, which can be anywhere in the world, plus at least two standardized features such as signage, décor or a trademark. Under Proposition G from 2007, those uses need Conditional Use Authorization in any neighbourhood commercial district where they aren't already prohibited.
That rule shapes real questions. Retail brokers, franchise operators and the architects who design storefronts all ask assistants about it. A firm that has taken projects through that process, and says so on a page that names the districts and explains the steps in its own words, is giving the engine a quotable answer that a general services page doesn't.
Getting the basics consistent across city, Google and your site
Google's Business Profile guidelines ask that your name reflect your real-world name as used consistently on your storefront, website and stationery. In San Francisco there is a fourth place that name lives: the city's own register. We line all four up, including the legal name versus trading name question that trips up many partnerships.
Then the schema. Google Search Central's guidance on AI features says structured data should match the visible text on the page. Your markup should name the same address, neighbourhood and services a reader can see, and the same ones the city has on file.
How we run a San Francisco engagement
We are a Toronto team working remotely. We have no San Francisco office and no San Francisco client to name yet. The records this page talks about are public, so the audit doesn't need anyone on the ground.
The first fortnight is a records check and a crawler-access check, then a prompt panel built around your neighbourhoods and your buyers. After that the work follows what the panel shows: listings first if the city's data disagrees with you, project pages if engines know who you are but not what you've built.
These are the kinds of questions we would expect San Francisco buyers to put to an assistant, paired with the public evidence an engine would need before naming a business.
| Who is asking | The question, as typed | What the engine needs to find |
|---|---|---|
| Owner of a Sunset District house | contractor for soft story seismic retrofit in the sunset district sf | Project pages naming the Sunset and the retrofit type, consistent with the firm's registered address |
| Franchise operator | does my cafe need conditional use authorization in a san francisco neighborhood commercial district | A clear explanation of formula retail rules from a firm that has handled the process |
| Restaurant founder in the Mission | architect for restaurant buildout mission district who handles DBI permits | Restaurant fit-out case pages in the Mission and a matching registered business location |
| Office manager in the Financial District | commercial cleaning company financial district sf with green certification | A services page naming the district and any certification by its exact name |
| Startup COO | bookkeeping firm in san francisco that handles SF gross receipts tax filings | A page explaining the firm's San Francisco tax work in plain terms |
| Retail broker | which retailers have opened in hayes valley under formula retail rules | Public, specific project or tenant descriptions under one consistent business name |
These are example prompts we would test at the start, not results we have measured. Your own panel is built from your buyers' real questions.
Sources
- DataSF / Office of the Treasurer & Tax Collector, Registered Business Locations - San Francisco
- DataSF / Department of Building Inspection, Building Permits
- San Francisco Planning, Chain Stores
- OpenAI, Overview of OpenAI Crawlers
- Google Business Profile Help, Guidelines for representing your business on Google
- Google Search Central, AI Features and Your Website
Where this work has already shipped

+75%
more Google impressions in three months
A brand-new category, made findable in the answer
NovelMaker case study
Generative Engine Optimization agency in San Francisco: common questions
How do we see what San Francisco's register says about us?
Search the Registered Business Locations dataset on DataSF for your business name or account number. Check every row: the location address, whether it is marked open or closed, and the NAICS code. The dataset's own explainer covers how to update a listing.
Our NAICS code is wrong. Does it matter for AI answers?
It can. The city publishes the code you self-reported, and data aggregators can draw on public registers. A wrong code is one more source describing you as something you aren't. It's a short fix, and we'd put it near the top of the list.
We're a contractor. Should we publish our permit history?
Publish project pages, not a permit dump. Describe the job, the neighbourhood and the permit type in plain sentences, with the client's consent. The permits are already public on DataSF; your pages give an engine the context those records lack.
We block AI crawlers on purpose. What do we lose?
OpenAI says sites that opt out of OAI-SearchBot won't be shown in ChatGPT search answers, though they can still appear as navigational links. Blocking training crawlers is a separate choice. We can set rules that allow search-time retrieval while refusing training, if that's your preference.
What will you not promise?
Placement in any engine's answers. Those are decided by systems we don't control. We promise the agreed records audit, fixes and content on schedule, and an honest report of where you appear when we re-run the same San Francisco prompts.
GEO agency in California
GEO agency in San Jose
GEO agency in Los Angeles
Related services
+3
Case studies using this work
+1
Want to be the brand the models name?