Skip to main content
WatchOne snippet sees every visit.

One visit means nothing. A pattern means a buyer.

One snippet, and Bryn watches your site, your product and your CRM together, including the visitors most tools never name. What it sees becomes a signal: something a buyer just did, like coming back to your pricing page.

IdentifyMatch the company and, when possible, the person.

The visit gets a name

A visit on its own is from nobody. Bryn matches it to the company behind it and, when it can, to the person and their role. The company is the common case; the person is the bonus. Everything downstream works at the company level first.

PrioritizeWeigh company fit, what they did and how recently.

Why Bryn thinks this company is worth your time.

Bryn scores each company from 0 to 100 and shows you exactly why: does it look like a buyer, is it acting like one, is it acting now. Above the threshold you set, Bryn can run the follow-up you approved. Below it, the company stays on the record, out of your way. You can change the weighting on every plan.

See how the score is built →

Fit is whether the company looks like the ones that become customers. Intent is how much buying behavior it showed inside the window. Timing is how recent that was.

Each one opens to the signals behind it; the weighted blend is the overall score, the number that decides what happens next. Weights are yours to tune on every tier.

Bryn learns by recording

Every run is recorded in the audit log, the work record your team and your CFO can both read. Your data stays yours. Bryn records what it did, and every action traces to the Play that ran it.

Bryn sharpens from the decisions you make in the flow of work: the weights you tune, the Plays you edit, the outputs you dismiss. Today that's your hand on the weights; the recorded log is what makes automatic re-weighting possible later.

Learn record

6 signal types ⬩ 7d window
high intent+40
viewed pricing+30
started trial flow+25
compared plans+20
viewed docs+10
site visited+5
blendfit ×0.66 · intent ×0.22 · timing ×0.12
window7d
axis cap100
ActRun the follow-up you approved.

The follow-up runs, end to end

The follow-up you approved runs into your stack (Slack, your CRM, your outbound) within the same minute. A rule you set once, when a buyer does this, do that: Bryn calls that a Play. One pattern can route to several destinations; different Plays route differently. Bryn runs it; you wrote what it runs.

Destinations

one pattern ⬩ several routes

demo-intent

viewed pricing ≥ 3composite ≥ 70

An account keeps returning to pricing and comparison material inside one week. Pings #growth-signals, files a CRM task with the signal chain attached, and personalizes the landing page for the next visit.

chat · crm3 runs · 7dcompleted · 2:02 PM

expansion

viewed docsinvited teammatecomposite ≥ 70

A known account reads the docs, opens the integrations catalog, and invites a teammate. Files an expansion task on the account.

crmcompleted · 9:41 AM
RecordKeep the reason, action and result.

Every signal, score, decision, and run: on the record

Time-stamped, source-traced, replayable. The log is your work proof and what Bryn learns from next. Your CFO and your data protection officer inherit the same trail. Retention windows, export, and erase-on-demand live in the trust center.

Pattern filed

2:02 PM

demo-intent / Anweledig Labs

2:01 PMAnweledig Labsingestevent acceptedpixel · /demo
2:01 PMAnweledig Labsresolveresolvedhigh intent
2:01 PMAnweledig Labsenrichenrichedclay
2:02 PMAnweledig Labsscorescoredfit 100 · intent 60 · timing 10091
2:02 PMAnweledig Labsdecidedecideddemo-intent
2:02 PMAnweledig Labsexecutekicked offdemo-intent
2:02 PMAnweledig Labsexecutecompleteddemo-intent
export: CSV / JSON ⬩ erase on demand ⬩ timestamps literal

Start with five follow-ups that are ready to use.

Each one is a Play you approve once. Write your own in the builder on every plan, or in code from the Growth plan.

When

A good-fit company returns to pricing

Then

Tell the team in Slack with the evidence, file a HubSpot task.

When

A trial goes quiet, then comes back

Then

Nudge the owner and point the visitor at the unfinished setup step.

When

A customer invites a second teammate

Then

Flag the upgrade and file the task.

+2 more, or build your own

See all five →

Watch the five steps run on one company

Give Bryn a website and it writes a Brief: its read on what that company runs, how it scores as a buyer, and the first follow-up worth making. The Brief is the loop above, run once on a real site, with the receipt at the end. Eighty-eight seconds, start to finish.

How Bryn builds a Brief

Bounded on purpose

Bryn's autonomy is bounded by approved Plays. The restraints are the feature.

No action outside the Play.

Bryn writes only to the systems your Play names, and never makes unbounded, open-ended API calls.

At the cap, Bryn pauses.

New identifications pause; existing Plays keep running on accounts already in scope. An in-product prompt offers the upgrade. No surprise bills.

One click, and Bryn waits.

Suspend all execution, or cut by region, segment, or Play. The audit log captures the suspend. Bryn waits. You decide when.

You hold the Play. Both ends of it

A Play is an action pattern you define and you approve: when this kind of signal appears on this kind of account, run this sequence into these destinations, with these guardrails.

Authority lives where you define and approve the Play, not in per-run sign-off. Run mode is the default; Approve mode is opt-in for sensitive Plays; the kill switch is always one click.

demo-intent

viewed pricing ≥ 3composite ≥ 70

An account keeps returning to pricing and comparison material inside one week. Pings #growth-signals, files a CRM task with the signal chain attached, and personalizes the landing page for the next visit.

chat · crm3 runs · 7dcompleted · 2:02 PM
demo-intentviewed pricing ≥ 3 and composite ≥ 70
expansionviewed docs and invited teammate and composite ≥ 70
trial-rescuetrial returned and composite ≥ 70
seatsinvited teammate ≥ 2 and composite ≥ 70
outboundhigh intent and fit ≥ 70
suspended · 2026-09-10 11:20 AM

Questions people ask first

What is Bryn?

Bryn identifies companies visiting your website, finds the right people to reach, and runs the follow-up you approved before the interest goes cold. Every action is recorded.

Who is it for?

Bryn is the Agent for founders, first GTM hires, and the teams that own revenue. If people visit your site and someone on your team owns the number, it's built for you.

How does Bryn know who's visiting?

Bryn matches a visit to a company and, when possible, a person, using what happened on your site and licensed business data. It shows you what it matched and what it used to decide.

What exactly is a Play?

A rule you set once: when this happens, on an account like this, do that, into the destinations you name, with the guardrails you set. Bryn calls that a Play. You write it once; Bryn runs every matching instance inside those bounds. See the Play library.

Does Bryn act without my approval?

Bryn acts only inside Plays you approved. Approval lives at Play definition, not at per-instance execution: that's the point. For sensitive Plays, Approve mode holds each instance for one click. The kill switch suspends everything, and the audit log captures the suspend.

What happens when I hit my account cap?

Bryn pauses new identifications and keeps existing Plays running on accounts already in scope. An in-product prompt offers the upgrade; staying put resumes on cycle reset. No surprise bills. Details on pricing.

What do I get in the first week?

Your first identified visitor in Slack in about 30 minutes, then a week of prioritized companies on the record, each with the reason it scored the way it did.

What does it cost?

From $49 a month, seven-day trial, month to month. Priced by the companies Bryn identifies, not by seats. See pricing.

See it run on your stack

Bryn watches, identifies, prioritizes and acts on its own. Then it writes down what it did.