Aller au contenu

Releases

E-mail campaigns can now exclude people from the audience, in the dashboard and through the assistant. And each Dashboard number opens the list behind it, already filtered to the same period. Also arriving: the Analytics, Engagement and Logs pages in Administration, Google Analytics with purchases, the members list with columns and search across all fields, and the sign-up form with the community's fields.

Cet article n’a pas encore été traduit. Vous lisez la version en anglais.

Today the campaign audience gets exclusions: besides choosing who receives it, the team says who does not. And the Dashboard is no longer just numbers: clicking an indicator or a chart point opens the list behind it.

Exclude people from a campaign's audience

What it is. Below who is in the audience (Everyone, or groups, tags and people), the new Exclude box takes groups, tags and people. Anyone matching an exclusion does not receive it, even if they are in an included group. The Audience preview and the send dialog show how many the rule removed: "1,240 in the selection, 312 excluded by the rule". Repeating campaigns get it too.

Example. Groups Inscritos 2023 and Inscritos 2025, excluding Inscritos 2026: it reaches those who signed up before and have not come back.

Where to find it. Administration › Campaigns, in the editor's E-mail and audience step. See The audience.

Audience exclusion through the assistant

What it is. Ask the assistant "send to Inscritos 2023 and 2025, minus those in 2026": it builds the audience with the exclusion, shows the summary sentence (how many in the selection, how many the rule removed, how many receive it) and repeats it before sending. See the recipe Send to 2023 + 2025, minus those in 2026.

From the Dashboard number to the filtered list

What it is. Clicking an indicator or a chart point on the Dashboard opens the list behind the number, already filtered to the same period: Active members opens the week's active members (the total matches the card); an Engagement point, that day's active members; Revenue and Sales, the sales of the period or the day; Presence and Bookings, the list of the day or the week; Campaigns, the campaigns sent in the period.

Why it matters. Seeing that 42 people were active is good; knowing who they are is what lets you act.

Where it is. Administration › Dashboard. On the list, the period shows as a chip with an × to remove. The days are the community's time zone days. Growth, New content and the Engagement card still have no list. See From the screen to the list.

Members and campaigns filtered by period

What it is. The Members list takes "Active from … to …" and "Joined from … to …", and the Campaigns list, "Sent from … to …", from the Dashboard or from the page address. Whoever joined and already left does not show up under Joined. Through the assistant: "who was active in the last 7 days?", "who joined this month?", "which campaigns went out last week?". See Filter by period, Filter by send period and the recipe Who was active, who joined and what was sent.

Analytics: who is here, where they come from and where buyers give up

What it is. The new Analytics page shows who visits the community, who is in it right now and at which step buyers give up. It is Memberfy's own and works with no setup. Four tabs:

  • Realtime: how many people are online now (logged-in members and visitors) and in the last 30 minutes, minute by minute.
  • Overview: visits per day, the most viewed pages and spaces, and where people come from.
  • Search engines and LLMs: how often search engines and AI assistants read the community's pages.
  • Purchase funnel: from the storefront to payment, how many went through each step and who stopped at each one.

Note on visits. Visits are not unique people: someone who came on three different days counts as three visits.

Where to find it. Administration › Analytics, for the owner and the admin; finance sees only the Purchase funnel. On the Dashboard, the Online now card takes you there. See Analytics.

Engagement, with the statement of each activity

What it is. The Engagement page shows the period's numbers compared with the previous period, activity per day, the most engaged people and the statement: one line per activity (post, comment, reaction, event registration, completed lesson, attendance…), with who did it, where and when. The statement has filters by person, kind and space, a link to what was done and CSV export.

Where to find it. Administration › Engagement, for the whole team (owner, admin, moderator and finance). The Dashboard's New content and Engagement cards open the statement already filtered. See Engagement.

Logs get their own page

What it is. The Logs left the Members tab and became a page in Administration, with everything the community records in one place: team, platform, AI assistant, members, e-mails, imports, finance and moderation. You can search, filter by person and period, and open each record to see what changed. The old address takes you straight to the new page.

Where to find it. Administration › Logs, for the owner and the admin; finance sees the financial records. See Logs.

Google Analytics with the community's purchases

What it is. With the community's Google Analytics 4 ID, Memberfy now sends, besides visits, the e-commerce events (storefront, checkout, purchase and refund), sign-up, login and the waitlist. The new optional API secret (Measurement Protocol) field makes purchases reach your GA4 even when a PIX or boleto is paid later, with the page closed. Once saved, the secret never shows again.

Where to find it. Settings, next to the Google Analytics ID. See Google Analytics.

Members list with columns, sorting and search across all fields

What it is. In the Members list, the team chooses the columns (job title, tagline, phone, groups, tags, plan, member since and each custom field), sorts by clicking a column header and searches every field at once: name, email, job title, tags, groups, custom fields and phone. Case and accents don't matter. The pagination also shows above the list. See The list.

What it is. The Custom fields tab is now called Form and gets three field types: Email, Phone and Link, each checked for the right format. A text field can have a validation rule (for example, a 6-digit registration number), with the message the person sees when it is wrong. And the Ask on sign-up option shows an optional field on the sign-up form.

At sign-up. The sign-up form asks for the required fields and those marked Ask on sign-up, in the list's order; the account is created only when everything is filled in the right format. See Custom fields and Sign-up and entry.

Profile: job title, a new edit screen and a nudge to add a photo

What it is. The profile gets a Job title (for example, Product manager at Acme), shown under the name on the profile and in the people search. The Edit profile screen was redesigned in two columns, with the profile type as cards and, in the same place, job title, phone and the community's fields. And whoever still has no photo sees a bar inviting them to complete their profile, which can be dismissed with Not now. See Account and profile.

A seven-step purchase funnel, from visits to payment

What it is. The Analytics Purchase funnel now starts at Visits and runs to Paid: seven steps, each with a line explaining who counts in it and the share of visits that got there (% of visits). It also shows how many went straight to a product, the orders that came in without going through the app (direct link, assistant, API) and since when there is data.

More than one product. The Product picker selects several products and plans at once, with search.

Who stopped. Who stopped here opens a dialog with search by name or email, pages and the products each member stopped on.

Where. Administration › Analytics, Purchase funnel tab. See Analytics.

What it is. When you upload several photos at once, each one shows its progress (Optimizing, Uploading 42%, Processing, Ready or Failed, with Retry), and the button becomes the batch's progress: Uploading 12 of 30 · 40%, Processing, Done or 3 failed · try again. Photos are reduced in the browser before uploading (up to 3840 px on the longest side, no visible loss), so even 50 MB ones go up fast.

Without being stuck in the dialog. Minimize keeps the upload going in a floating pill while you browse; closing the tab mid-upload asks for confirmation. In the gallery, the photo shows as Processing until it's ready. See Gallery.

Publication date on posts

What it is. The owner and the admin pick a past date for a post, an article or a status, under More options › Publication date. The post lands in the Feed and in the space's list at that date, with the time in the community's time zone.

Why it matters. Whoever brings a community over from another platform, or records something that went out earlier, keeps the original order without firing news about old content: a post with a past date notifies no one and earns no ranking points. Future dates aren't accepted (this isn't scheduling).

Where. In the form to create or edit a post or status, right before Publish. See Publication date.

Posting on behalf of another member, through the API and the assistant

What it is. Through the API and the assistant, the owner and the admin can publish a post or a status in another member's name, to bring over the community's history with each post's author. Only for someone with a role below yours, always silently (nobody earns points or gets notified), and who posted it is recorded in the Logs. See Posting on behalf of another member.

Content import from a spreadsheet

What it is. The new Import content button brings posts, articles and short posts into the community from an .xlsx or .csv spreadsheet, with each one's original date and author, matched by email. You choose where each column goes, check a preview with the summary and the first 10 rows, and only then import. The import runs in the background, with progress, a button to cancel and, at the end, a report you can download as a CSV.

Why it matters. Whoever comes from another platform brings the whole history in the right order, without setting off notices about old content: nothing is notified and no one earns points. Importing the same spreadsheet again doesn't duplicate anything, and the images in the text become hosted on Memberfy.

Where it is. In the header of Content and Feed spaces, for the owner and admins.

How to start.

  1. Export the posts from the old platform to a spreadsheet, with title, text, date and the author's email.
  2. Click Import content, upload the file and check the columns and the options.
  3. Read the preview and click Import.

Example. A newsletter with 800 issues since 2019 becomes 800 articles in the Archive space, each on the date it went out. See Importing content from a spreadsheet.

What it is. A link in the text of a post or a status now shows up as a player or a card, as on social networks. YouTube videos (live streams and the start time set in the link included), Vimeo and Loom, music and podcasts from Spotify and SoundCloud, Instagram posts and reels, LinkedIn posts and Google Maps play or show right there. News and sites become a card with title, image, description and domain; a page without an image gets a page snapshot. App stores become an app card, WhatsApp shows up without revealing the number, GIFs show as images and shorteners lead to the final address.

Why it matters. A link stops being raw text: the live stream video plays inside the post itself, and a shared news story shows what it's about before the click.

Where it is. In the post and status editors: paste a link and the preview shows up right away, below the text. Up to 5 per post, ready a few seconds after saving. All images are hosted by Memberfy; some sites block reading and show up with just the domain. The spreadsheet and Substack imports also turn links into players and cards. See Links become a player or a card.

What it is. While a gallery photo loads, its spot pulses in the community's color instead of showing the broken-image icon. When you open a photo, the bands around it are filled with the photo itself, blurred, instead of black bars; the same goes for the photos of Classifieds ads. See Gallery.

Free trials that charge at the end, one per person

What it is. A plan with Free Trial? now really starts with no charge, and billing happens when the trial ends: on a card, automatically; with PIX or boleto, the charge arrives by email before the end and follows the renewal schedule. With Require Card for Trial?, the card is asked for upfront.

One trial per person in each plan. It covers every billing option of the plan and is counted by email and by card: whoever already had the trial, even after canceling or switching options, pays from day one. Coupons don't apply during the trial, which is already free.

Why it matters. Before, a trial could end without the first charge ever happening. Now a trial turns into paying subscribers at the end instead of open-ended free access. See Free trial.

Request a community on the website, with an answer by email

What it is. Whoever requests a community at memberfy.net/en-us/request-access passes a quick anti-bot check, sees right away whether the address is free and gets the "We received your request" email. Once the Memberfy team approves it, the community is created with its address already live and 90 free days on the chosen plan, no card, and the new owner gets the email with the plan and the Set my password button. See Getting your community.

Improvements

  • Images up to 50 MB across the app: Gallery, profile photo, Classifieds ads, email campaigns, Downloads covers, product images, logo and social media image, parcel and Support photos, and images the assistant receives by link. The favicon stays at up to 2 MB. See Gallery.

  • Gallery: optional title and drag and drop. A photo's title starts empty instead of the file name, and can stay blank or be cleared later. Photos can be dragged onto the upload dialog or anywhere on the gallery page. See Gallery.

  • Photos up to 50 MB when creating or editing a member: the Avatar in New Member and in member editing takes the same limit as the rest of the app. See Invite members.

  • The sales of a day opened from the Dashboard use the community's time zone, not your computer's: the list shows the same sales the chart counted.

  • The connector tells the assistant when the tool list changes and how to update it: disconnect and reconnect the connector and open a new conversation. See The assistant can't see a tool.

  • Clearer opt-out labels: the scope of someone who asked not to receive e-mails shows as Campaigns only (still gets the community's other e-mails) or All e-mails (gets only account security and purchase e-mails), with a hint of what still arrives. See E-mail campaigns.

  • The assistant now has 403 tools: it imports posts from a spreadsheet, shows how a link will look in a post, reads Analytics and who is online, the engagement statement and the Logs, uses the members list's columns and search, creates email, phone and link fields with a validation rule and Ask on sign-up, and stores the Google Analytics API secret. See Tools.

  • Reliability improvements and new security controls.

  • One photo per person: changing your own photo, in My Account or in Edit profile, changes the account photo and the community profile photo together. Before, My Account could show two photos, one of them empty. The staff changes another member's photo only on the community profile and only for someone with a role below theirs. See Profile photo.

  • Unified member name: invite with a name and one name per person. The name typed when inviting (in New Member, through the API or the assistant) or in the import spreadsheet becomes the new account's name, and the invitation email already goes out with it. Changing your own name changes it everywhere. The team changes someone else's name only in its own community and only for someone with a role below theirs. See Name.

  • Lighter gallery bulk upload: the upload list shows small thumbnails, without opening the original photos on the page. See Gallery.

  • The assistant sees the gallery and classifieds photos: each image comes with a link for it to look at and the time the link expires, which lets it, for example, find duplicate photos. See the recipe Find the duplicate photos in the gallery.

  • More stability and better performance in the processing the platform does in the background.

  • Website: the Pricing page on memberfy.net now shows Analytics (with Google Analytics 4), Engagement and the fields asked at sign-up, in every plan.

Fixes

  • Public galleries showed broken images to visitors who weren't logged in. Now whoever visits a public space sees the photos normally. See Gallery.
  • The assistant failed to change a member's role, tags, groups and manager. It works again.
  • Names that showed as the email's username. Someone who joined by invite or import showed in some places as maria (from [email protected]) and in others with the typed name. Now the invite's name goes to the account. To fix someone who was already like that, edit the Community Display Name: if the person is only in your community, the account name is fixed too. See Name.
  • The assistant's actions in the Logs read as sentences, in the reader's language, no longer as an internal code. Changes to the community settings show the translated field name.

For developers

API

  • Checkout of an option with trialDays: the first trial starts with no charge and is billed at the end by the renewal; requiresCardForTrial requires a card method (400 on paymentMethod). One trial per plan, per email and per card; whoever already had it goes through the normal checkout, and two simultaneous checkouts of the same trial get 409 (trialAlreadyUsed).

  • Gallery: title is optional in POST /api/gallery/images (no title, ""), and PUT /api/gallery/images/{imageId} takes "" or null to clear it. Same for add_gallery_image and update_gallery_image in the assistant.

  • New POST /api/community-requests (public, rate-limited per IP, with an anti-bot check), used by the website form to request a community.

  • Campaigns: the audience takes exclude (groupIds, tags, profileIds); a group or person outside the community is refused with 422. The audience preview returns candidatesBeforeRule and excluded.byRule. See the API Reference.

  • GET /api/profiles/list takes activeFrom/activeTo and joinedFrom/joinedTo, and GET /api/campaigns takes sentFrom/sentTo: YYYY-MM-DD dates, inclusive, in the community time zone; an invalid date or a start after the end returns 400.

  • Analytics: GET /api/analytics/overview, /pageviews, /funnel, /funnel/members, /online and /realtime, with X-CommunityId. Engagement: GET /api/reports/engagement/activities (also as CSV), and GET /api/reports/engagement returns compare. Logs: GET /api/logs.

  • GET /api/profiles/list takes fields= (phone, groups, plan, custom fields), searches every field and takes sortBy=jobTitle or a custom field. The profile has jobTitle.

  • Custom fields: EMAIL, PHONE and URL types, pattern, patternMessage and askOnSignup. New GET /api/member-fields/signup (public); POST /api/auth/register takes fields and, without a required one, returns 422 on the field.

  • PATCH /api/communities/{id}/settings takes gaApiSecret. PUT /api/communities/{id} no longer takes payoutEnabled and signupModel (400 on the field): both change only in the settings. See Creation order.

  • POST|PUT /api/content and POST|PUT /api/status accept publishedAt (ISO 8601, past or now; owner and admin only, otherwise 403; future or invalid, 400) and authorProfileId (posting on behalf of another profile in the community, only with a role below yours: 403 otherwise, 404 if the profile isn't in this community). Responses include publishedAt, and lists and the feed sort by it. See Content › In the API.

  • Post import from a spreadsheet: POST /api/import/spreadsheet (analysis), POST /api/import/spreadsheet/{id}/preview, POST /api/import/spreadsheet/{id}/start, GET /api/import/spreadsheet/{id} and GET /api/import/spreadsheet, owner and admin only; one import per community at a time. See Import.

  • POST|DELETE /api/upload/avatar/profile on someone else's photo needs a role above theirs (403 on profileId); your own photo changes together on the account and the profile.

  • POST /api/media/urls and GET /api/media/{id}/url accept visitors who aren't logged in for the media of public spaces.

  • Analytics: GET /api/analytics/funnel returns the visit step, untrackedOrders and collectionStartedAt, and accepts productIds; GET /api/analytics/funnel/members accepts productIds, page and search and returns each member's products. New POST /api/media/upload-urls to upload images straight to storage.

  • Link embeds: POST /api/embeds/resolve ({ url }, any member) returns a link's player or card; 422 for an invalid link or a private address, 429 with Retry-After (30 per minute per person and 300 per community; links not in the cache, 10 and 60). Posts and statuses carry embeds (up to 5, in text order), filled in the background. See Embeds.

  • Person name: POST /api/profiles/invite accepts people: [{ email, name }] (emails still works); PUT /api/profiles/{id} and PUT /api/members/profile accept name, and responses include name. Changing someone else's name requires a role above theirs (403 profile.nameRoleTooHigh, on name) and the profile in the X-CommunityId community (403). See Person name.

MCP: technical details

  • create_campaign, update_campaign and preview_campaign_audience accept exclude: { group_ids, tags, profile_ids }; the preview and the confirmation of send_campaign and schedule_campaign carry audience_summary. See E-mail campaigns.
  • list_members takes active_from/active_to and joined_from/joined_to; list_campaigns takes sent_from/sent_to. See list_members.
  • New: analytics_report, get_online_now, list_engagement_activities and list_logs; engagement_report returns compare_summary. See Reports and charts.
  • list_members takes include, custom_field_keys, sort_by: jobTitle and sort_by_custom_field; create_member_field and update_member_field take the email, phone and url types, pattern, pattern_message and ask_on_signup; update_community_settings takes ga_api_secret. See Tools · Members.
  • analytics_report accepts product_ids, step: visit and, in funnel_members, page and search; the funnel returns step_labels and funnel_notes. Images by link up to 50 MB. See analytics_report.
  • create_post and create_short_post accept published_at and author (profile id, e-mail, name or link); update_post accepts published_at. See create_post.
  • list_gallery_images, list_classified_ads and get_classified_ad return image_url, thumbnail_url, url_expires_at and url_valid_seconds on each image; get_media_url, get_download_url and get_lesson_media_url also return url_expires_at and url_valid_seconds. See list_gallery_images.
  • update_avatar on someone else's photo follows the same role rule as the API.
  • New: analyze_content_import, preview_content_import, start_content_import and get_content_import, to import posts from a spreadsheet (admin). See analyze_content_import.
  • New: preview_link (any role, read-only, no confirmation), on top of POST /api/embeds/resolve. create_post, create_short_post, update_post, list_posts and open_link bring embeds. See preview_link.
  • invite_member and invite_members send the name with the invite; update_member_profile and update_my_profile accept name (display_name and full_name remain as synonyms). See update_my_profile.

S’abonner au flux (Atom)