Skip to content
Localense

For local and multi-location businesses

Be findable in every market you serve.

You do not need another dashboard telling you traffic is down. You need to know which pages are broken, which searches you nearly rank for, which locations are behind, and what to do about it first. Localense answers that from your own data and shows its working.

  • 14-day trial, no card
  • Read-only Google connection
  • No invented traffic estimates
Architectural illustration of a landscaped neighborhood with a home, local businesses and orange location pins.
A conceptual neighborhood. Real decisions start with your data.

How it starts

Three steps to a list you can actually work through.

No strategy workshop, no import of somebody else's benchmark. Localense reads what is already happening on your site and in your search data, then ranks what to change.

  1. Step 1: Connect and describe the business

    A short wizard captures your services, service areas and locations, then you authorize Search Console and Analytics with your own Google account. Localense backfills 16 months of daily search data on connect.

  2. Step 2: Crawl the site

    The crawler walks your site the way a search engine does, respecting robots rules, and evaluates 32 audit rules. Pages that only render with JavaScript get a second pass in a real browser so they are judged on what a visitor sees.

  3. Step 3: Work the queue

    Findings from the audit, your search data, competitor pages, your profile checklist and AI answers become one scored list. Each item states the recommended action and the success metric that would prove it worked.

Search analytics · Almost ThereSample project data
Search Console queries ranking at average position 4 to 15 with at least 50 impressions in the last 28 days.
QueryClicksAvg pos
composite decking installer/services/composite-decking/346.2
deck builder near me/277.4
composite deck builder/services/composite-decking/197.8
trex deck installation/services/composite-decking/129.4
screened porch contractor/services/screened-porches/811.9

GSCSearch Console · last 28 days · synced 2h ago

The demand you already have

The cheapest growth is the searches you nearly win.

Before chasing new keywords, look at the ones where you already appear on page two. Almost There lists every query averaging position 4 to 15 with at least 50 impressions, mapped to the page that ranks for it.

Six more views sit beside it: winning, declining, new, lost, low CTR and top. Each definition is printed rather than implied, so declining means clicks fell at least 25 percent and at least 5 clicks, not whatever the tool felt like that week.

Everything filters by date range, query, page, device, country and by the services and locations you mapped, and the CSV export takes exactly the same parameters as the screen.

See how search analytics works

The site itself

Find the quiet breakages before a customer does.

A local site rarely fails loudly. It fails as a dead service page, a location page missing its business schema, a phone number nowhere in the markup, a redirect chain that eats every link you earned.

  • 32 rules, plain language

    Status codes, redirects, broken internal links, indexability, canonicals, titles, descriptions, headings, thin and duplicate content, image alt text, JSON-LD validity, LocalBusiness schema, phone presence, mixed content and HTTP pages.

    CRAWL
  • A score you can check

    The health score prints its own formula, the weight of each severity and the exact deduction each issue caused. It is deterministic arithmetic, not an AI guess or a traffic estimate.

    CRAWL
  • The affected URLs, kept

    Every finding lists the pages it hits and always reports the true total, so you can hand a developer a list rather than a diagnosis.

    CRAWL
  • Progress, run to run

    Each audit records which issues are new, which are fixed and which came back, so improvement is a fact from your own data instead of a claim in a slide.

    CRAWL
Site audit issueSample project data
highLOCALBUSINESS_SCHEMA_MISSING1page

No LocalBusiness structured data anywhere on the site

Why it matters

LocalBusiness schema is how search engines connect the site to a real-world business with an address, hours, and service area; without it the site competes with weaker local signals.

Recommended fix

Add LocalBusiness JSON-LD (or the closest subtype) with name, address, phone, and hours, ideally on the homepage and contact page.

CRAWLSite crawl · 142 pages · audited 4h ago

The wording is the rule's own. Nothing on this card was written for the marketing site.

Multi-location

One weak market should not hide behind three strong ones.

Blend five locations into a single line and the one that is quietly failing disappears. Localense maps each location to its own landing pages, so every number resolves to a market you can act on.

Each location carries its own address, phone and page URLs, and one can be marked primary. Search Console clicks, Analytics sessions and the open action queue are then resolved against those pages, each with its own provenance line rather than a shared footnote.

The Business Profile checklist is scored per location too, so the market with missing hours and no services listed is visible as a gap rather than averaged away.

An average across markets is the fastest way to lose the market that needs you.

Per-location insightsSample project data
Search Console clicks and average position, Analytics sessions, and open actions for each location over the last 28 days.
LocationClicksAvg posOpen actions
Austin, TX/locations/austin/2145.83
Round Rock, TX/locations/round-rock/6311.47
Cedar Park, TX/locations/cedar-park/2714.29

GSCSearch Console · last 28 days · synced 2h ago

GA4Analytics 4 · last 28 days · synced 2h ago

Your Business Profile

A completeness score with every weight printed on it.

Google Business Profile API access requires a separate Google approval that is not enabled for Localense. Until it is granted, profile data comes from a customer-authorized CSV import, and Localense tells you which source you are looking at.

  • Import what you can export

    Download a template covering identity, categories, description, services, hours, attributes, review and photo counts and the performance figures you have access to. Re-importing the same location updates its snapshot rather than duplicating it.

    IMPORT
  • 100 points, 10 checks

    Primary category 15, services 15, hours 15, description 10, attributes 10, reviews present 10, review responses 10, additional categories 5, photos 5, website 5. No correlation claim is attached to the total.

    IMPORT
  • Live Places lookup

    Google Places (New) text lookup is built and ships behind a restricted server key that is not enabled yet. Results are fetched live, carry Google attribution and a Maps link, and are never stored or trended, as the Places terms require.

    PLACES
  • Gaps become work

    Every unchecked item generates a scored Business Profile opportunity in the same queue as your technical and content work, ranked by the same formula.

AI answers

Customers are asking assistants who to call. Find out what they hear.

Write the questions your buyers actually ask, route them through OpenRouter to OpenAI and Perplexity models, and keep every answer as a dated snapshot. Running a prompt needs an OpenRouter key configured on the server; without one, prompt management still works and a run fails with an explicit provider-unavailable error rather than a fabricated result.

  • What each answer told you

    Whether you were mentioned, recommended and cited, your position in the answer, the sentiment, which competitors were named instead and which URLs were linked.

    AI
  • Tracked over time

    Mention rate, recommendation rate, citation share, average position and competitor overlap across a prompt set, run on demand or weekly or monthly.

    AI
  • The response, kept

    Every completed run stores the response text along with the provider and model that produced it, so a later model change cannot rewrite what you saw.

    AI
  • Gaps and regressions

    Prompts where you are absent become scored opportunities, and an AI visibility drop alert watches for a set that gets worse between runs.

Why this sits next to your site audit

Assistants answer local questions from the same public signals search engines read: your pages, your structured data, your listings and what other sites say about you. The work that makes you legible to a crawler is largely the work that makes you quotable to a model.

So an AI visibility gap does not open a separate workstream. It lands in the same queue, ranked by the same formula, next to the broken location page and the missing LocalBusiness schema that probably caused it.

See what a run records
Opportunity detailSample project data
criticalTechnical fixopen0.168

Fix: Pages returning 4xx client errors

Pages that return 4xx errors waste crawl budget, break the visitor journey, and drop out of the index.

Recommended action

Restore the page, redirect the URL to the closest live page, or remove every internal link pointing at it.

Success metric

CRAWL_4XX affects 0 pages in the next site audit (currently 6)

Score breakdown

Impact0.70
Confidence1.00
Business value0.80
Urgency0.60
Effort2
Score0.168

Evidence (1)

  • CRAWLCRAWLEDcrawler · audit_issue

    Site audit found CRAWL_4XX (high) affecting 6 page(s).

    issue_code
    CRAWL_4XX
    severity
    high
    category
    status
    affected_count
    6

technical_fix:CRAWL_4XX

Site crawl · audited 4h ago

One queue

Everything the tool found, in the order worth doing it.

Site issues, keyword clusters just off page one, topics competitors cover and you do not, profile gaps and AI visibility gaps all land in the same scored list. Seven categories, one formula.

The score is impact times confidence times business value times urgency, divided by effort, and all five factors are shown. If you think a job is harder than the tool assumed, you can see exactly which number to argue with.

Under it sits the evidence: whether the fact was crawled from your site or reported by Google, and the record it points at. Each item also carries the success metric that would prove the work paid off, so next month has a scoreboard.

How scoring works

Checkable numbers

Facts about the software, not claims about customers.

Localense is early. Inventing testimonials would contradict the whole point of a product built on showing its evidence, so here is what it measurably does instead.

  • 32

    Audit rules evaluated on every crawl of your site

    CRAWLALL_RULES in localense_audit/registry.py

  • 16mo

    Search Console history backfilled when you connect

    GSCBACKFILL_MONTHS in localense_core/jobs/tasks.py

  • 100pts

    Profile completeness checklist, every weight visible

    IMPORTWeighted checks in localense_core/local_seo/service.py

  • 7

    Query views over your own search data

    GSCQUERY_VIEWS in localense_core/search_analytics/service.py

Where a value is inferred rather than measured, it is labelled as inferred and carries a confidence number. Where a source has nothing to say, you get an en dash and the name of the source, never a zero standing in for missing data.

Questions

What owners ask before connecting anything.

What do I have to connect before this is useful?
Google Search Console and Google Analytics 4, through your own Google account and read on your behalf, plus your website domain so it can be crawled. That is enough for search views, a full site audit, a health score and a first action queue.
Does it connect to my Google Business Profile?
Not directly yet. Google Business Profile API access requires a separate Google approval that is not enabled for Localense, so profile data comes from a customer-authorized CSV import today. A live Google Places lookup is built and ships behind a restricted server key that has not been enabled yet; when it runs, results are shown live with Google attribution and are never stored or trended.
How does it handle more than one location?
Each location owns its own landing page URLs, so Search Console, Analytics and open actions resolve per location instead of being averaged into one company number. One location can be marked primary, and the profile checklist is scored per location.
Will it tell me how much traffic a keyword could bring?
No, and deliberately. Volume, competition and CPC render as “Not available” until an approved enrichment provider is connected. What it does show is your own impressions, clicks, CTR and average position, which are measurements rather than estimates.
What do I need for the AI visibility feature?
Prompt sets, scheduling, extraction and scoring all ship. One protected OpenRouter key routes prompts to the configured OpenAI and Perplexity models; without one, a run fails with an explicit provider-unavailable error rather than inventing an answer.
Do I need someone technical to act on this?
For the content and profile work, no. For the technical fixes, every finding names the affected URLs, why it matters and the recommended fix in plain language, which is usually enough to hand straight to whoever maintains the site.

Start with your own site

Run one crawl and see what it finds.

Connect read-only Google access, crawl the site, and read a scored list where every item shows the evidence behind it.

14-day trial · no card required · read-only Google access