Skip to main content

Have something to say?

Tell us how we could make the product more useful to you.

No safe way to prepare a launch: a paused campaign can't be tested or loaded, so we go live to test

When I onboard a new client, I build their campaigns paused. Then I'm stuck: a paused campaign can't send a test, and its contacts can't be imported. The only way to see the real email and SMS on my phone, or to load the client's list, is to switch the campaign on. If that happens during its sending window, it starts sending to real customers right away. For a client's very first campaign, where nothing may go wrong, that is exactly backwards. What happens today (9 November 2026) On a paused campaign, "Send test" is greyed out, with no explanation. On an active campaign outside its sending window, "Send now" on the test is postponed to the next window. "Invite multiple contacts" (CSV import) only lists active campaigns, and its button is "Import and start sending": the daily batch starts today. The tester is enrolled in the whole sequence, so after testing I have to find and delete my own contact before launch. Proposal Allow "Send test" on paused campaigns, sent immediately whatever the sending window, and only the step being tested (or a "test the whole sequence now" option). Allow importing a CSV into a paused campaign: contacts wait, and sending starts with the daily limit when the campaign is resumed. A "start date" for the import would also do. (Related: Upload csv of contacts without adding to campaign, Campaign schedule on bulk import.) Remove test contacts automatically once their test is sent, or keep them out of the contact list.

The email preview shows the logo picked in the step, but customers receive a different one

Each email step of a campaign has its own logo setting, and the preview shows the logo you pick there. The email that actually goes out ignores it and uses the organization's logo from Settings. I only found out when a client's first test email arrived with the wrong logo, after I had checked the preview. For an agency running several brands, or a client with a wide and a square logo, the preview gives false confidence: what you approve is not what customers get. What happens today (reproduced on a demo organization, 9 November 2026) Campaign editor → email step 1 → Logo: upload and select a test image ("STEP LOGO"). The preview shows it. Send a test: the email received shows the organization's logo (Settings → Organization), not "STEP LOGO". On a client account, changing the organization's logo changed the logo received; the step setting had no effect. Proposal Send the logo selected in the step. Or, if the organization logo is meant to win, remove the step setting and show the organization logo in the preview.

1

Switching client in one tab silently switches every other tab: the banner shows one location, the next window works on another

While preparing a client's launch, the session I was working in switched by itself to another client of mine, one with almost 2,000 contacts, because the active client had been changed elsewhere in the same account. I was about to delete test contacts. Nothing was deleted, but one more click and I would have acted on the wrong client's data. I work with several tabs open all day; this makes every bulk action a gamble. What happens today (reproduced on a demo organization with two locations, 9 November 2026) Tab A: location "Movers" active, banner "You're in … Movers". Tab B: switch to location "Kitchens". Back in tab A, without reloading: the banner still says "Movers", but the next window opened ("Import contacts") already works on "Kitchens": its campaign list is empty instead of showing Movers' two active campaigns. The "Delete selected contacts" confirmation names no client, no location and no count: "Are you sure you want to delete the selected contacts?" Proposal Keep the active organization and location per tab (in the URL or the page), not per account session. At minimum, when the active location changed elsewhere, reload the tab or show a clear warning before any action. In every destructive or bulk confirmation (delete contacts, import, send), name the organization and location and the number of items affected.

1

Our test SMS went out under another client's brand: an unregistered sender ID is silently swapped by the provider

My client's first test SMS arrived signed with another client's name. The custom sender ID set in the organization's SMS settings was not registered with Brevo for France, so Brevo silently replaced it with another sender ID already approved on the same account, which happened to be another client's brand. Nothing in the platform flagged it: the test window still said "Sending from:" with the sender I had typed. Had I not tested on my own phone first, real customers would have received a review request signed by a different business, with no way to know who was really texting them. For a white-label agency, that is about the worst first impression possible. What happens today (reproduced on a demo organization, 9 November 2026) Platform → Messaging → SMS → our Brevo provider → Organizations → add the organization with the custom sender "DemoTest", never registered with Brevo. The form shows a warning ("Only use a sender you've already registered with your SMS provider") but accepts any value. The "Test" button ("Tester") on that organization: the window says "Sending from: DemoTest". The test SMS arrives under a different sender ID: another client's approved ID from the same Brevo account. Brevo's statistics confirm it was delivered with that other sender. No error, no warning in the platform. On the real client account, two test SMS also left under other sender IDs. Once I registered the ID in Brevo (Settings → SMS sender IDs, per country) and it was approved, the next test and the real messages went out with the right sender. Proposal In the test window and the campaign's SMS settings, say plainly that the sender is only used if it is registered and approved at the provider for the recipient's country, and that the provider may replace it otherwise. When the provider reports the sender actually used, show it in the test result and the contact's activity ("Requested: DemoTest, delivered as: …"), and flag any mismatch. If the provider's API allows it, check the custom sender ID against the provider's approved list when it is saved, and block or warn before any message goes out.

1

France: Google now opens PagesJaunes ratings before Google reviews, and we can't manage them

Since September, Google search in the EU shows local businesses in a new "Businesses" block with one tab per provider (Google's documentation, a consequence of the Digital Markets Act decision of July 2026). The Google Business Profile is now just one tab. In France, PagesJaunes is in that block on 7 of the 8 local searches I checked on google.fr today, and on 4 of them it is the tab opened first: the first ratings a customer sees are PagesJaunes ratings, not Google ones. EmbedMyReviews doesn't support PagesJaunes yet, so for French clients we can neither track these reviews, nor grow them, nor reply to them, right where Google now sends people. Several of my French clients have already asked me about it. What I see today (google.fr, 9 November 2026, non-personalized results) PagesJaunes opened first, Google second: "plombier lyon", "serrurier marseille", "agence immobilière nantes". PagesJaunes opened first, then Planity, then Google: "coiffeur lille". Google opened first, PagesJaunes second: "déménageur paris", "garage automobile bordeaux". Zenchef opened first, then PagesJaunes, TheFork and Google: "restaurant lyon". Google only: "électricien toulouse". France looks like the first country where a directory got into this block, but it comes from an EU-wide regulation. The same block is already live in Germany, Spain and the Netherlands, showing only the Google tab on the searches I tested so far. Agencies with clients elsewhere in the EU will likely face the same thing with their own national directories soon. PagesJaunes is pushing this hard with French businesses (Solocal's article), and French review platforms such as Guest Suite, Avis Vérifiés and Custplace are already PagesJaunes partners. Proposal Quick win: support the PagesJaunes write-review link in campaigns and review forms. Every listing has a stable direct URL that opens the review form, https://www.pagesjaunes.fr/contribution/votre-avis/ , so no partnership is needed for this part. Today, review forms only offer connected sources, so there is no way to send a customer to PagesJaunes at all. Add PagesJaunes (pagesjaunes.fr) as a built-in review source: sync reviews and rating, so they show in the dashboard, alerts, reports and widgets. PagesJaunes has an official Reviews API (developer portal), but access is granted case by case by Solocal (apisupport@solocal.com), so this likely needs a partner agreement on your side. The listing pages are public but block automated requests. Later, keep an eye on the other providers Google shows in this block (Zenchef and TheFork for restaurants in France), and on the directories that appear in other EU countries. Replying to PagesJaunes reviews is only possible in Solocal's own tool today, so I'm not asking for that. Screenshots: "plombier lyon" and "coiffeur lille" on google.fr, with the PagesJaunes tab open and Google collapsed below.

Missing Approve button and approval links for MCP review reply drafts

Hi Manny, I use the EGR MCP integration to draft review replies for Holistic Massage & Spa (organization 5, location 5). Something changed in how drafts appear, and I’d like to know whether it was intentional. What changed: 1. The draft_review_response call used to return an approval_url and a customise_url. Since about 11/3 it returns only the queue status, with no links. 2. In the Auto-Respond approvals queue, these drafts now show only a Customize button. There used to be an Approve button as well. What still works: the drafts do register in the queue. I click Customize and submit, and the reply goes out normally. So this is a workflow change, not a failure. Examples: - Review 136 (Parthkumar Pathak), draft 83, created 11/3 - Review 137 (Jordan Frederiksen), draft 84, created 11/5 - For comparison, review 133, draft 82, created 10/28 returned both links. Auto-respond rule is “MCP Drafts” (id 3). Questions: Was this change intentional? If so, is Customize then submit the intended approval path for MCP drafts? If not, can the Approve button and the links be restored? Thanks, Anil

GBP Insights – Toggle on/off

GBP Insights is a valuable addition to EMR, but I believe there is an opportunity to give agencies greater control over how they offer it to their clients. Public reviews and GBP performance data are fundamentally different. While clients already connect their GBP to manage and respond to reviews, performance metrics such as phone call clicks, website clicks, directions and search terms represent a different category of business data. For larger and enterprise clients, this distinction really matters. They may have formal requirements regarding which business data is displayed through third-party platforms, as well as vendor assessments and internal approval processes. My suggestion: Allow agencies to enable or disable GBP Insights at both the subscription plan level and the individual client level, just like other EMR features. This would give agencies the flexibility to include GBP Insights in specific service packages while having control over its availability for individual clients. This would offer two commercial benefits: For enterprise clients: Agencies could control the visibility of business-specific data according to each client's requirements. For smaller clients: Agencies could offer GBP Insights as an optional, value-added service or premium feature. This flexibility would help agencies differentiate their service packages, create additional revenue opportunities and confidently serve larger organizations.

S.MinFeature Request4 days ago

Automatic Country Code Detection on Signup Form

Please add automatic country code detection to the customer registration form. Currently, customers must manually select their international dialing code when entering their mobile phone number. This creates unnecessary friction, particularly for users registering from different countries. Requested functionality: Automatically detect the visitor's country using IP-based geolocation or browser locale. Preselect the corresponding international dialing code. Display the appropriate country flag and dialing code. Allow customers to manually change the country code. Provide a sensible default country if automatic detection fails. Examples: India → +91 United States → +1 United Kingdom → +44 The feature should work consistently on desktop and mobile devices. Expected benefits: Easier customer registration. Fewer phone number formatting errors. Better international user experience. Reduced friction and potentially improved signup conversion rates.

Not able to add domain for custom email address

The function of adding domain & connecting custom email address doesn’t work as expected, especially for Emailit provider. Steps to replicate issue: In customer account, Navigate to Settings > Email Settings Add Domain > Save Nothing happened where the customer was supposed to get DNS records to verify their sending domain.

QR Code stats

When I am setting up a customer to use QR codes, I am scanning and testing the codes. can I reset the count of scans and attempts, so that the analytics are more accurate and I can remove my testing scans and attempts?

Edge Mobile Browser white screen issue

White screen issue. I have replicated the issue I found yesterday of a white screen instead of the 5-star screen loading from a QR code scan. See video. The customer is Butter Bee Bagel and it's a new customer I'm prospecting. They will use only a qr code. Using Chrome and Edge browsers, the issue seems to be solely on Edge. Notes: I am using an iPhone 17 Pro Max with the Edge browser as default. I have deleted the data save in the browser app. I do not see this issue with Chrome browser.

RobertinBug Reports5 days ago

QR Codes

I see that sms and emails can be limited in a package. what about QR codes? can they be limited for the number for scans that will work? Can they be disabled, or do you just delete them and they will stop working?

RobertinBug Reports5 days ago

Invitation flow confuses new users: the email describes a step that doesn't exist

The invitation email tells new users to create an account, then come back to the email and accept. That second step doesn't exist: after "Join", they are already in. Both buttons open the same sign-up page, which shows neither their email, nor who invited them, nor their role. The subject can't be edited and reads like spam in French, and the email lands in Gmail Promotions. Clients get lost at their very first contact with the platform, to the point that I send a separate email with every invitation to explain what to click. For a white-label product, that first impression looks unfinished. What happens today (tested on a demo organization, with an address that has no account and one that has an account) Sending the invitation The Manager role is preselected, and comes back after each invitation sent. The pending invitations list shows the email and the time sent, but not the role or the locations, so there is no way to check what was sent. The email The same email goes out whether or not the address already has an account: an "Accept invitation" button, a "Create account" button, and the sentence "after creating an account, you can click the accept button in this email". The subject is fixed: "Demande à la gestion de la réputation : " in French. It cannot be edited, and no personal message can be added. The email does not say who sent the invitation, which role it gives, or which locations the user will see. What the invited user sees No account yet: both buttons open "Join / Create your account to get started" (name, password, confirm). After "Join", the user lands on the dashboard, logged in and already a member. Existing account, logged out: "Accept invitation" opens the standard login page, with no mention of the invitation. "Create account", and the link copied from the pending list, open the same account creation form as for a new address. Two pages stay in English when French is selected: "This invitation is for a different account" and "This invitation link is no longer active". Proposal One email adapted to the recipient: a single "Join " button for a new address, a single "Log in to accept" button for an existing account, and copy that matches the real flow. Show who invited the user, the role and the locations, in the email and on the join page, along with the invited email address. When the login page is reached from an invitation, say so ("Log in to join "), and make the copied link adapt to whether the address already has an account. Let the agency edit the subject and add a short personal message, per language. At minimum, a natural French subject such as "Invitation à rejoindre ". When sending: no preselected role (or the most limited one by default), and the role and locations shown in the pending list. Translate the two pages that stay in English. Screenshot: current invitation email in French (organization name replaced).

SALES INTELLIGENCE : Customize the spacing between pins before generating the report

Here is the thing, I have a prospect in the countryside and as I can see the default space setting between pins in sales intelligence is about 2.5 or 3 km. The sales intelliegence report says that my prospect is #1 and I would like use 10 or 15 km as space between pins in order to show external pressure and opportunities In Sales Intelligence, when I click on Create New Report . I would like the ability to chose space between pins before generating the report. Thank you in advance

General

Feedback form not showing

Feedback forms are showing anymore: https://a.cl.ly/01a19d5f-8e73-7636-a98e-c1692ca2f769

General

Customer Hub, Digital Loyalty & Menu System

I would like to suggest a major new feature that could expand the platform beyond reputation management into customer engagement, loyalty and retention. The concept is to create a Customer Hub where a single QR code or NFC tap gives customers access to useful business features without requiring them to download an app. Core Concept A customer scans a QR code or taps an NFC stand/card and sees a branded mobile page such as: Welcome to [Business Name] 🍽 View Menu / Services 🎁 Loyalty & Rewards ⭐ Leave a Review 💬 Give Feedback 📶 Connect to Wi-Fi 📍 Directions 📞 Contact 📱 Social Media Each business should be able to choose which modules are displayed and customise the branding, content and button order. The key idea is: One Tap → Menu + Loyalty + Rewards + Feedback + Reviews This gives customers a genuine reason to interact with the QR/NFC product instead of using it purely as a review request. 1. Customer Hub Each business/location would have a unique mobile-friendly Customer Hub. The business could customise: Logo and cover image Brand colours Welcome message Business information Enabled/disabled modules Button order Contact details Social links Directions Review links A live mobile preview inside the dashboard would also be useful. 2. Digital Loyalty Program Allow businesses to create digital stamp/loyalty programs. For example: Buy 5 coffees → Get 1 free Visit 10 times → Receive $10 off Collect 10 stamps → Unlock a reward Businesses could configure: Program name Number of stamps required Reward Reward expiry Welcome reward Birthday reward Terms and conditions Participating locations Customers could join using their name, email and/or mobile number. After joining, they receive a digital loyalty card showing their current progress. For example: Coffee Club ● ● ● ● ○ ○ ○ ○ ○ ○ 4 / 10 stamps 6 more stamps until your reward. 3. Apple Wallet & Google Wallet A very valuable addition would be allowing customers to save their loyalty card directly to: Apple Wallet Google Wallet The pass could contain: Business branding Customer name Current stamp balance Available reward Customer QR/barcode When the customer's balance changes, ideally the wallet pass would update automatically. This provides an app-like experience without requiring customers to install another app. 4. Staff Scanner Businesses would need a simple staff interface for issuing stamps and redeeming rewards. Staff could open a scanner from their phone or tablet and scan the customer's loyalty QR code. It could display: Customer: Sarah Stamps: 6 / 10 + Add Stamp Redeem Reward View Customer There should be protection against customers issuing their own stamps. Possible controls: Staff accounts Staff PIN Device authorisation Transaction history Admin ability to reverse incorrect transactions Every transaction should record the customer, location, staff member,

1General

Feature Request – Include Business Name in “Report Ready” Email

When a report finishes, the “Your latest report is ready!” email only shows our agency logo, a Download button, and a generic sign-off. Nothing in it says which business the report belongs to. We manage reports for a large number of client locations, so with this many alerts arriving, we can’t tell them apart without opening each download. Request: Please add the business/location name to the notification email, ideally in both places: Subject line, e.g. “Your latest report for [Business Name] is ready” Email body, e.g. “Your latest report for [Business Name] is ready!” If possible, it would also help to show the report type and date range (e.g. “Monthly Report – October 2026”). This small change would save us a lot of time and make it easy to figure out who the report is for. See screenshot of how it currently shows in our email

Organization logo uploaded through the API is saved as a temporary file path

Hi team, First, thank you for the API — the Agency endpoints have made onboarding our customers genuinely pleasant, and we use them every day. I think we have found a small bug in PUT /api/v1/organizations/{id}. When a logo is uploaded through that endpoint, the request succeeds and the organization is updated, but the stored logo path is the PHP temporary upload name instead of the saved file. The image then 404s everywhere it is shown. What we send: POST /api/v1/organizations/{id} _method=PUT name=... logo=@logo.png (PNG, 20 KB, 192x192) -> 200 OK What is stored afterwards: https://cdn.revw.me//tmp/phpnn7FR1 -> 404 (note the double slash and the /tmp/php... name) What we expected is a stored media URL, like the one the interface produces when the very same file is uploaded by hand: https://cdn.revw.me/ /profile-photos/.png -> 200 A few details that may help: Reproduced with two different PNG files (20 KB and 27 KB), both well under the documented 250 KB limit. Uploading the same file through the web interface works perfectly, so it looks like only the API path is missing the step that moves the uploaded file into storage. A real PUT with multipart/form-data is not parsed at all (it answers "The name field is required"), so POST + _method=PUT appears to be the only way to send a file — and that is the path showing the issue. There is no remove_logo field, so once a broken logo has been set, it can only be cleared from the interface. Thank you very much for looking into it, and thanks again for the work you put into the platform.

Add a language field to the contact record — you already have the translations, just not the way to choose one

Hi team, We run review requests in six languages, and the campaign builder makes that genuinely easy — pairing each campaign with its own feedback form is exactly the kind of detail that makes the tool a pleasure to use. I'd like to report one small gap, because I think you're already 95% of the way there. What we see We sent a real test from our German campaign today. The email arrives beautifully in German: subject, greeting, body, button, signature — all of it. And then the last line, the unsubscribe link, is in a different language entirely. Not German. The account's language. It's one word, in small type, at the very bottom. But it's the one line that has to be beyond reproach, and it's the only thing in the message that doesn't speak to the person reading it. Why it happens, as far as we can tell You already translate every customer-facing string into 28 languages — that work is done. And you already have two levels of language setting: the agency default, and the customer's own override in their profile. But both of those describe the account holder. Neither describes the recipient. And a contact record holds an email address, a phone number and a name — there's nowhere to say "this guest reads German". So when the email is built, the only language available is the sender's. That's the whole gap. Not a missing translation — a missing way to pick the one you already have. What would close it An optional language field on the contact, settable manually and mappable in the CSV import, used to select which of your 28 translations renders the system strings of an outgoing message. It would fall back to the current behaviour whenever the field is empty, so nothing changes for anyone who doesn't use it. Why it may help others Anyone serving an international audience from one location runs into this: hotels, dive operators, tour companies, clinics, anything in tourism. They all write their own content in the guest's language — and they all end their emails in someone else's. A pleasant side effect: once a contact carries a language, campaign selection could eventually be suggested from it, which would save a lot of manual sorting for multilingual setups. Thanks again for everything you've built, and for reading this far.

GatewayAPI.eu support

Currently only the .com version is supported for SMS integration. According to the documentation, the only change needed should be the endpoint url from messaging.gatewayapi.com to messaging.gatewayapi.eu. Thanks!