Club Vero — The truth behind every visit
Reset your password
Enter the address you sign in with and we will send you a link.
Set your password
You're using a temporary password. Choose a new one to continue.
Club Vero — The truth behind every visit
Property
Loading…
Overview
Overview
Trends
F&B
Golf
Racquets
Events
Service Recap
Intelligence
AI Insights
Training Actions
Case Alerts
Watchlist
People
Members
Visits
Communications
Survey Queue
Survey Log
Message Log
Setup
Upload
Survey Builder
Reports
SMS Credit
Settings
Help & FAQ
Signed in as

Member Experience

Last 30 days
General Manager · Full Access
Automated pipeline — upload the end-of-shift report and Club Vero does the rest. No manual sending, no chasing.
Property NPS
—
Last 30 days
Response rate
—
Last 30 days
Surveys sent
—
Last 30 days
Open case alerts
—

Benchmarked indices

Last 30 days
Each index is scored 0–100 from the questions tagged to it in your survey templates. Questions you add without a tag are collected but never affect these numbers.
CHI · Club Health
—
Loyalty & recommendation
SSI · Service Satisfaction
—
Staff & service quality
OHI · Operational Health
—
Operational effectiveness

Outlets

By outlet, over the period above. Score is every rated answer on one 0–100 scale and is what the status band reads; NPS is beside it with the number who answered, because a single 9 out of 10 is +100.
Loading...

Recent open-text feedback

Feeds directly into the weekly AI analysis.
No comments yet.

Case alerts

Flagged the day they're received, not at month-end review.

Trends

Average score first — every rated answer on one 0–100 scale, so a middling reply moves it by its share of the replies. Then NPS, which does not behave like an average: one 9 out of 10 is +100, so each month says how many people answered. After those, the questions that survey actually asks: each line is named from its own template — an outlet that nominates its own survey is charted under its own questions, not the dining room's.
No trend data yet. Charts will appear once you have survey responses across multiple months.

Food & beverage

Dining scores from the surveys sent after a qualifying visit. Golf rounds are on their own screen; events are their own department.
Average score
--
F&B NPS
--
Response rate
--
Responses
--
Average scores
No data yet
Recent responses · last 5
No responses yet

Outlet performance

Every active outlet over the selected period. Click an outlet to read its own scores and comments above.
Trade
Loading…
By membership category

Recent F&B comments

Last 5 · feeds the weekly AI analysis
No comments yet.

Server leaderboard

Server scores from survey data. Composite = NPS (30%) + Service (30%) + Overall (20%) + Food (20%), each on 0-100. The board is ordered by composite score.

Staff shift feedback

What your team said about their own shifts — anonymously. Answers are stored with no link to the person who wrote them, arrive in shuffled order, and are held back entirely until enough have come in that no single one can be traced back. Set one up in Settings → Staff survey occasions.

AI analysis

to
AI-generated training recommendations and recognition, based on server survey scores and guest comments for the selected period. Each action is assigned on generation to whoever owns the outlet the server worked most, the same way a case alert is — set that in Settings → Outlets.

Weekly AI narrative

Generated weekly on Fridays from survey comments across all outlets. Click "Generate now" to run analysis on-demand.
Loading insights…

Training action plans

Generated weekly by AI from guest feedback. Priority-tagged, assigned to a person, tracked to completion.
All plans
Unassigned
Mine

Case alerts

Any response scoring low is flagged the same day it's received — not at month-end review. It is assigned and emailed straight away, and passed up if nobody resolves it inside the club's window — set both under Settings → Case alert rules.
All
Awaiting call-back
Open
Assigned
Resolved

Did the recovery work?

Every member who had a bad visit, and what happened the next time they came in.

Still owed a good visit

Longest wait first. A case marked resolved does not clear anyone from here — only their next visit does.

Settled

They came back and told us how it went. These are the ones the recovery rate is measured on.

Member health

Each member against their own rhythm, adjusted for how the rest of the club moved over the same weeks.
Loading
—
Worth a call, in order
MemberWas comingNowLast visitAt risk

Add a member

These are the fields the eligibility check and survey delivery use — same six as the CRM export.

Bulk import

Upload the club's membership export — matches the six required fields exactly.
⬆
Drop a CSV or PDF here, or click to browse
member_id, first_name, last_name, phone_number, email_address, communication_preference, opt_out_flag
Download CSV template →

Members

Member #NamePhoneEmailPrefStatus

Edit member

Queued surveys

Loading…

Who will receive a survey

Everyone below qualified on spend and hasn't been surveyed at that outlet inside its re-survey window — or was, and never replied for long enough that they are askable again. Send someone early, or remove anyone who shouldn't get one.
DateNameOutletSpendChannelGoes to

Add a visit

Log a visit manually — works for members, guests, commercial visitors, or anyone else.

Visit log

All visits on record — from POS uploads and manual entry.
All
Members
Visitors
Commercial
Golf
Other
DateNameTypeOutletSpendQualifiesSurvey

Events scorecard

Events carry their own NPS and CSAT. Every type you run is scored on its own and rolls up into Events overall — this is a separate department from the outlets, so none of it moves your Club Health, Service or Operational indices.

Event types

The kinds of event you run. Each one is scored on its own line of the scorecard above, and can nominate the survey its events ask.

Create event

Leave the send date empty to send by hand from the event's own screen. Nothing goes out between 8pm and 8am — a blast scheduled inside those hours waits until the morning.

All events

DateEventTypeAttendeesSurveys sentResponsesNPSCSAT

0
Attendees
0
Surveys sent
0
Responses
—
NPS
—
CSAT

Service recap

The post-function report for this event — how it ran, what went on the bill, and who worked it. Saved against the event, so it is searchable next year when the same function comes round.
Function notes
Linens
Billing
Staffing
Name and hours worked. A name matching somebody on the Servers list is marked, and those are who a staff survey for this event can reach.

Recent responses

What attendees answered, newest first, under this event's own questions.
No responses yet

AI insight

Reads the scores and the written comments from this event and says how it went, what worked, and what to change next time.

Event setup

The type decides how this event is grouped on the scorecard. The template decides what attendees are asked — a golf event asks about the course, a dinner about the food.

Add attendees

Add members (by ID) and/or guests (by name + contact info). Both receive event surveys.
— or —
☰
Drop a CSV here
Must have a member_id column

Attendees

Member #NameChannelContactSurveyResponse

Survey log

Every survey sent, pending, and completed — with delivery channel and response status. Answers are shown against the question each member was actually asked. A survey that never went out is listed as Not eligible.
All
Awaiting reply
Answered
DateMemberOutletChannelStatusNPSOverallLink

Message log

Every SMS and email sent by the system — surveys and test messages.
All
SMS
Email
Failed
DateMemberChannelRecipientStatusBody

Send survey manually

Close this case

Period report

Everything below is computed once on the server, so the download and the screen can never disagree.

Club indices

Each index is scored 0–100 from the questions tagged to it.

Month on month

Responses and NPS across the period.

By outlet

Server performance

Servers with at least three responses in the period.

NPS composition

The net score hides its own make-up: a club with few detractors and one with many of both can net to the same number, and they need different work.

Week by week

The same responses as above, cut finely enough to see when something changed.

Outlet trends

Each outlet over the same periods — whether a score has drifted or dropped.

Response rate

Of the surveys sent in this period, how many came back — by room, by week, by survey and by type of member. A survey belongs to the period it was sent in and counts as answered whenever the answer arrived, so a Friday send answered on Monday is a success rather than a miss.

Segments

Who the member was, and when they came in.

Question detail

Every question in every template answered this period — including ones you added yourself, which are collected and reported here even though they move no index.

Events

Scored separately from the outlets, and deliberately not part of the club indices.

Case alerts

What was done about the cases

Balance
—
Roughly buys
—
more text messages
Automatic top-up
—

Top up

Credit is used as messages go out. When it runs out, text sending stops until it is topped up — nothing is lost, and the next send picks up whoever was missed.
$
Payment is taken by Stripe on their own secure page. Card details never reach this dashboard or our servers.

Automatic top-up

Keeps surveys sending without anyone having to watch the balance. When credit falls below the trigger, the saved card is charged for the top-up amount.
$
$
$

Payments

Every top-up, refund and adjustment, newest first.
DateTypeAmountBalance afterNote

Daily spend

What credit is going out per day. A flat stretch means nothing was sent; a spike is usually an event blast.

What credit was used on

Messages sent, by day and type. A day's surveys are grouped into one line rather than listed individually.
DateTypeMessagesCost

Send survey manually

Upload end-of-shift report

One file, once a day. Everything after this happens automatically. The day's golf tee sheet goes up on Golf — same job, other file.
⬆
Drop your POS export here, or click to browse
PDF, CSV or Excel · NorthStar, Jonas, Lightspeed and Club V1 exports are read as they come out of the POS
Eligibility logic applied automatically: a visit qualifies for a survey if its spend meets the outlet's threshold and the member hasn't already been surveyed for that outlet within the frequency window. Everything else is skipped — no manager review needed.
Processing…
MemberOutletSpendQualifiesReason

Golf surveys

Course conditions, pace of play, and pro shop scores from post-round surveys sent via tee sheet upload.
Average score
--
Golf NPS
--
Response rate
--
Responses
--
Average scores
No data yet
Recent responses · last 5
No responses yet
By membership category

Golf & dining crossover

Measured in member-days, so somebody who ate twice after one round counts once.
Loading
—
Stayed to eat, by day
Where golfers eat
Regulars who never stay

Upload tee sheet

Upload the day's tee sheet. The system extracts member IDs and names so you can review who will receive the golf survey before sending.
⛳
Drop a tee sheet here, or click to browse
PDF, CSV, or Excel (.xlsx) with member IDs or names · date is auto-detected
Processing...

Golf survey log

All golf surveys sent, showing member, date, and completion status. A round that never became a survey is listed as Not eligible.
Loading...

Survey sent after a round

The questions members see after their round live in Survey Builder, with every other survey the club sends.
Loading…

Racquets surveys

Court condition, booking and overall scores from surveys sent after a game.
Average score
--
Racquets NPS
--
Response rate
--
Responses
--
By sport
No responses yet
Average scores
No data yet
Recent responses · last 5
No responses yet

Upload court bookings

The booking export, as CSV or Excel. Cancellations are skipped, a member on two courts in a day is asked once, and a court booked for a day that has not happened yet is held back until it has.
🎾
Drop the booking export here, or click to browse
CSV or Excel (.xlsx) with Amenity, Time, Status and User columns
Processing...

Racquets survey log

Every game recorded, with the sport and court it was on. A booking that never became a survey is listed as Not eligible.
Loading...

Survey sent after a game

The questions members see after their game live in Survey Builder, with every other survey the club sends.
Loading…

The night

Covers, sales and what happened, block by block. Everything saves as you type — a phone that locks at eleven does not lose the block — and filing one is a separate press, so a service that genuinely did nothing files zeros and is still a different thing from one nobody has been asked for.
Total revenue
--
Food + beverage + takeout
Total covers
--
Dining covers only
Occupancy
--
Covers over seats
Blocks filed
--

Service blocks

Each block asks for what it actually has: the à la carte rooms take reservations and sell takeout, the pool counts check-ins, the Trap has a bartender and no servers. Which is which — and what each block seats, which is what occupancy is worked out against — is set in Settings → Service recap.
Loading…

History

Every night the club has filed. Spend per cover across a period is the period’s revenue over the period’s covers, never the average of the nightly figures — that would weight a Tuesday with four covers the same as a Saturday with three hundred.
Loading…

The day’s notes

Banquets, beverage, billing, facilities, the handover, dress code. These belong to the night rather than to any one service — on the paper sheet each one happens to line up with a block, which is only where it fitted on the page.
What came up on the night

Raise one

An issue goes to somebody who can act on it, and they are emailed straight away. A recognition names the person it is about, and they are told. Both end up on one list below.

Open and recent

Loading…

For the leadership meeting

Who has been named favourably, one row per person rather than one per mention — twelve rows for the same server makes them look like the only person in the building and pushes everybody mentioned once off the bottom of the page.

Survey templates

Each survey type uses its own question set. Members see the template attached when the survey is sent.

What the member receives

Exactly what goes out for this template — the same text the sender uses.

New survey template

Club profile

FieldValue
Club name
Time zone
Currency

Outlets

Building rolls several tills into one row on Overview and F&B — a clubhouse that rings up under three revenue centres is one room to the member who ate in it. It is a label, not a merge: the outlets stay separate underneath, so sending, thresholds, ownership and alert routing are unaffected and it can be undone by clearing the field. Leave it empty for an outlet that is its own building. The name, the minimum spend that qualifies for a survey, how many days before a member can be re-surveyed, and which questions they are asked. That window counts surveys that were sent; one that went unanswered for longer than the no-reply period set in Settings stops holding the member back, so somebody who never replied is asked again on their next visit rather than at the end of the month. Leave the questions on "Default for visit type" for ordinary dining; choose a template when an outlet needs its own, such as a racquets centre or a lesson. Who answers for the outlet is set below, under Case alert rules. Changes save automatically.

Add outlet

Case alert rules

Escalate anything unresolved after hours
Who hears about a poor response, and who picks it up if nobody does. Auto assign to and email owns the case — it is assigned to them the moment the alert is raised and emailed straight to them, and it is the same person who gets the outlet’s weekly training plan and its coaching actions. Email also to is copied on the same message without owning anything. If unresolved is who it goes to once the clock above runs out; the clock starts when the member replied, not when somebody next signs in. Leave any of them on "Nobody" and the managers are told instead. Changes save automatically.

Events

Events have no outlet, so they name their own people. Set the department line and you are done; give a kind of event its own names only where somebody else runs it.

Service recap — who it goes to

The night, as a PDF, to people with no account here — an owner, the board, the club president. Commas, semicolons or one per line; Name <addr> is fine and gets stripped down to the address. Sending is refused while any service is still unfiled, for the same reason sign-off is.
Loading…

Service recap

The blocks on the end-of-day sheet. Owner is who files one — a block with no owner is open to anyone who can reach the screen, because the alternative is a block nobody can file until somebody visits this page, and the day does not close. The F&B Director and above can file any of them. In use takes a block off tonight's sheet without touching anything it has already filed. The tick boxes decide what a block is asked for: a Men's Grille with takeout switched off is never asked for its takeout sales again. Seats is what the block holds, and what its occupancy is worked out against — blank for a block the club has not counted, which gives no occupancy figure rather than one of nought. Winter is what it seats once the pool and the Golf Patio close; zero for a room that shuts. Changes save automatically. Use In use for a room that has closed — it keeps every night already filed against the block; ✕ deletes a block outright and is refused once anything has been filed against it, because those covers and sales are the club’s own history and every total already reported from them would change.
Loading…

Add block

The name as it should read on the sheet — “Links Bar”, “Jameson Room Dinner”. It starts switched on, asking for a manager, covers and the two sales figures; set its seats, its owner and the rest on its row.

Service recap — the night’s note boxes

The boxes filled in once for the whole day rather than per block — handover, beverage notes, dress code violations. In use takes a box off tonight’s sheet without touching what has already been written in it on earlier days. Removing one deletes the box for good; switching it off is the safe move if you may want it back. Changes save automatically.
Loading…

Add box

Servers

Front-line servers and waitstaff credited with sales — this is the list the Server dropdown offers when you log a visit, and who receives a shift survey. Separate from Team members above: a General Manager does not belong here unless they actually work the floor. A phone number or email is what makes someone reachable — anyone without either is credited for their sales but cannot be sent a shift survey. Edit a phone or email directly in the list; changes save as you leave the field.
Add a server under Team members → Add a person, choosing Servers — one place for everyone, whichever list they belong on.

Survey delivery

Surveys are queued when shift data is uploaded and go out once a day at the time you choose here. Changing the time takes effect straight away — if the new time has already passed today, that day's batch goes out within a minute. Nothing is ever sent between 8 PM and 8 AM Eastern.
Eastern Time

Weekly analysis

When Training Actions and AI Insights are written. Reads the week's scores and comments for each outlet and produces one training plan per outlet. An outlet with no responses that week gets no plan rather than an empty one.
Eastern Time

How often one member can be surveyed

Off unless you turn it on: by default every qualifying visit is surveyed. Several cheques at the same outlet on the same day already count as one visit, so this only affects a member who used different outlets. Set a cap and the highest-spend visit is the one surveyed — the rest are dropped rather than saved for later, and show on the send log as skipped.

Asking again when nobody replied

Each outlet's Re-survey days stops a member being asked about the same room too often. It counts surveys that were sent, so a member who never opened one was unaskable for the rest of that window even if they were in every week. Once a survey has gone this long with no reply, it stops holding them back and they are surveyed again on their next qualifying visit — nothing is sent in the meantime. A member who did answer is left alone for the full window. Set this to Off to keep the old behaviour.

Staff survey occasions

Ask a named group about a named night. Give it a name and a date, upload the roster or pick who worked it, then schedule it or send it now. Answers come back anonymously: they are stored with no link to the person who wrote them, and held back entirely until enough have come in that no single one can be traced back.
Leave the send date empty and nothing goes until you press Send. A time scheduled late holds until the morning rather than texting somebody at one in the morning.

Team members

Staff who can be assigned case alerts and manage the system. Each role sees only what it needs. Adding someone here does not put them on the Servers list below — that is who gets credited with a cheque and sent a shift survey. Somebody who does both belongs on both.

Access for

View opens a screen and refuses every save on it. Edit does both. The server enforces this, so a screen set to None is an API that refuses them too — it is a permission, not a tidier menu. Starting point: the default.

Add a person

One place for everyone. Team members hold a role and sign in to this dashboard. Servers are credited with cheques, appear in the Server dropdown when you log a visit, and receive shift surveys. Somebody who does both goes on both lists.

Upload a roster

Same "Add to" choice as above. Paste from a spreadsheet, or choose a CSV. First row must be the column names. Team members needs name (or first_name and last_name) plus optional email and role. Servers needs name plus optional phone and email. Anyone already on the list is updated rather than added twice. This does not create dashboard logins — do that below, one person at a time.

User accounts

Create dashboard logins for team members. Only Super Admins and General Managers can manage accounts.
All
Common questions

Common questions

Each of these is answered by a screen. Work down the path and stop at the first thing that looks wrong.

Help articles

Step-by-step guidance for every screen. Select an article to read it.