Page Layers and Audiences
Every Graze feed has two jobs. The Rules decide which posts are allowed into the feed at all. The Page decides how each page a reader sees is put together from those posts. Page Layers are how you control the second job.
A layer is one way of ordering your feed's posts (newest first, trending, best of, and so on) together with a share of every page. Give a feed several layers and each page becomes a mix: for example, 70% newest posts and 30% trending posts, woven together so it reads as one feed rather than two blocks.
Layers never change which posts pass your Rules. A post has to pass the Rules before any layer can show it.
Where to find layers
Open your feed in the editor. The Feed block has two sections:
- Page (top, with the layers icon): your layers live here.
- Rules (below, with the filter icon): the nodes that decide what gets into the feed.
In the left sidebar, the Page layers button (the layers icon, just below the Rules filter icon) opens the palette of layers and audience blocks.
Every feed starts with a single layer that takes the whole page. You only need to think about layers when you want to mix more than one ordering, or tailor a layer to each reader.
Adding a layer
- Click Page layers in the left sidebar.
- Under Ordering, pick a layer: New layer, Trending layer, Blend layer, Old layer, Best Of layer or Wilson Trending layer.
- Click the canvas. The layer is added at the bottom of the Feed's Page section.
- Set its share, then press Save.
A new layer starts with an equal share of the page. A feed can have up to 10 layers.
A layer sitting loose on the canvas does nothing. If you see "Drag this into the Feed's Page section to make it part of the page.", drag it into the Page section.
The orderings
- New: newest posts first.
- Old: oldest posts first.
- Trending: posts gaining engagement quickly, with older posts decaying over time.
- Blend: a mix of recency and engagement.
- Best Of: the strongest posts, with a gravity setting that controls how quickly older posts sink.
- Wilson Trending: ranks posts by how your feed's own readers react to them, using a confidence score so a post with a few strong reactions doesn't beat one with many.
Wilson Trending needs reader activity to work. On a feed with few readers it may have nothing to show yet. Give it a modest share until your feed has an audience.
Parameters
Each layer has a Parameters section, folded by default. When folded it reads "defaults", or lists the values you have changed. Leave a field blank to use the default.
- New and Old have no parameters.
- Trending and Blend: Like (3), Reply (5), Repost (3), Decay (1), Window (h), Reader like (3), Reader reply (5), Reader repost (3), Request less, Request more.
- Best Of: Gravity (1.8), Time offset (2).
- Wilson Trending: Confidence z (1.96), Window (h) (48), Like (1.0), Reply (2.0), Repost (1.5), Quote (1.5), Request more (2.0), Request less (-2.0).
Like, Reply and Repost weigh engagement from anyone on Bluesky. The "Reader" weights boost posts that your feed's own readers like, reply to or repost. Request more and Request less weigh readers' "show more / show less like this" feedback on posts in your feed (Request less is a negative signal); today these two only affect Wilson Trending layers. Decay sets how much recent activity matters: low decay strongly favours recent posts, high decay treats older posts more equally. Window (h) is how many hours back the layer looks. For Best Of, higher Gravity makes old posts lose rank faster, and Time offset shifts when a post starts to decay. For Wilson Trending, Confidence z is the confidence level of the score (1.96 means 95%).
Thresholds
Each layer also has a Thresholds section. Use it to require minimum likes, replies or reposts for posts in that layer only. For example, a Trending layer can require 10 likes while a New layer next to it shows everything. When folded it reads "none", "all of N rules" or "any of N rules".
Shares: how much of the page each layer gets
With two or more layers, each layer has a Share of every page setting. The layer header shows it as "N% of every page"; with a single layer it reads "the whole page".
Shares always add up to 100%. When you change one layer's share, the others are adjusted in proportion to make room.
You can set a layer to 0% to switch it off without losing its settings. It will say: "Off. At 0% nothing from this layer reaches the page; its settings stay here for when you turn it back up." At least one layer must have a share above 0%.
How a page is built
When a reader opens your feed, Graze:
- Runs every layer at the same time, each asking for its share of the page. On a 30-post page, a 70% layer fills 21 slots and a 30% layer fills 9.
- Weaves the results together in proportion, so the page reads as a mix.
- Skips posts the reader has just seen on their last few pages, so scrolling doesn't repeat itself.
Order matters. If two layers both pick the same post, it is credited to the layer higher up in the Page section. The badge on each layer's header (for example "1/3") shows its position. Drag layers up or down to reorder them.
If a layer has fewer posts than its share (for example a new Wilson Trending layer, or a layer whose audience matches nothing), that page may be a little shorter. The other layers don't fill the gap.
Audiences: tailoring a layer to each reader
An audience shapes a layer around the person reading it, based on who they follow. Every reader gets their own version of the layer.
Add audience blocks from the layer's Audience row using + Only show, + Move up or + Group, or drag them in from the Audience section of the Page layers palette.
Only Show Posts From
Limits the layer to posts from one group of people, as seen from the reader:
- People they follow: accounts the reader follows directly. The strongest signal, but on most feeds few readers follow many of the authors.
- People their follows follow: accounts the reader's follows follow, weighted by how many of their follows reach each author. Excludes people the reader already follows.
- Their niche favorites: accounts near the reader that the wider world hasn't found yet.
- Popular near them: accounts near the reader that are also widely known.
- What their network is discovering: accounts reached through follows made in the last week.
- Their communities: members of the social clusters the reader's follows concentrate in.
- This feed's own authorities: who this feed's recent authors collectively follow. This is the only option that is the same for every reader.
Every option except People they follow adds a setting: "reached by at least N of the people they follow" (for authorities, "of this feed's authors"). Raise N for a tighter, more trusted circle; lower it for broader reach.
If you put several Only Show blocks directly in a layer, a post has to match all of them.
Move Up Posts From
Uses the same audiences, but instead of hiding anything it moves matching posts higher up the page. Nothing is added or removed. Use it when you want a layer to favour people a reader knows without going quiet when they don't know anyone.
Each audience can be moved up once per layer. When a layer has more than one Move Up block, each shows a weight: how much that audience counts against the other Move Up blocks in the layer.
Audience Group
Combines Only Show blocks with Any of these (a post matches if it matches at least one) or All of these (it must match every one). Groups can contain other groups, up to three levels deep. Move Up blocks can't go inside a group.
An Only Show block or group sitting outside a layer does nothing. Drag it into a Page Layer, or into an Audience Group inside one.
Audience settings on the layer
Once a layer has an audience, its Audience row shows these settings:
- If nothing matches: what a reader sees when the audience matches none of the layer's posts for them. Show the feed unfiltered (default) falls back to the layer without the audience. Show nothing leaves that layer's share empty. Be careful: on most feeds, many readers share no authors with the feed and would see an empty page.
- Boost strength (0–100%, default 100%): how far Move Up posts can climb among the posts already on the page. At 30%, a boosted post can climb about 12 places on a 30-post page. From 50% upward, the audience outweighs the feed's own order. At 0% the boost is off.
- Combine by (with two or more Move Up blocks): Strongest signal wins (default) or Signals add up.
Boost strength and a Move Up block's weight are different dials. Strength is how strongly the whole layer favours its audiences. Weight is one audience's importance against the other Move Up blocks in the same layer. With a single Move Up block, leave its weight at 100% and use Boost strength.
A layer can use at most 6 different audience signals and 16 Only Show blocks.
The Gym Layer
Under Self-improvement in the Page layers palette you'll find the Gym Layer. Adding it turns on the Feed Gym for your feed; removing it turns the gym off.
Graze fills the gym layer's share with whatever ordering it is currently testing, and learns from how readers respond. When nothing is being tested, the slice follows your main layer. Its share is how much of your feed is experimental. A feed can have one Gym Layer, and it has no parameters, thresholds or audience.
Example recipes
Fresh with a dash of what's hot. A New layer at 70% and a Trending layer at 30%.
Friends first, but never empty. One New layer with a Move Up block set to "People they follow". Readers see the whole feed, with posts from people they follow lifted toward the top.
A trusted-circle slice. A New layer at 80%, plus a Best Of layer at 20% with an Only Show block set to "People their follows follow", reached by at least 3 of the people they follow, and If nothing matches set to "Show the feed unfiltered".
Try a new ordering safely. Add a Wilson Trending layer at 0%, set it up, then raise it to 10–20% once your feed has regular readers.
Saving and when changes go live
Press Save to apply your changes. Graze checks your layers before saving and won't save if:
- there are more than 10 layers ("A page can have at most 10 layers");
- every layer is at 0% ("Every layer is at 0%. Give at least one layer a share of the page.");
- two layers are identical, with the same ordering, settings and audience ("Layer N is the same as layer M…"). The editor warns about this as you build: "Same as layer N. Change a setting or the audience, or remove it."
Saved changes reach readers shortly after saving; allow up to about an hour for every reader to see them. When a reader follows someone new, their audiences pick that up within about a minute.
Common questions
Why did adding a second "Only Show" block make my layer empty? Several Only Show blocks in a layer must all match. "People they follow" and "People their follows follow" can never both match, because the second excludes people the reader already follows. Put them in an Audience Group set to Any of these instead.
Does Move Up add posts from people I follow that aren't in my feed? No. Move Up only reorders posts the layer already has. To change which posts appear, use your Rules, or an Only Show block.
Can I use layers on a personalized feed? No. Personalized feeds are served by a different system and can't be layered.
Can I use layers in a custom node? No. Layers belong to a feed's Page, not to its Rules, so they aren't available in the custom node editor.
I see "Older reader-lens setting" on my layer. What is it? It's a setting from an earlier version of audiences. Click Convert to blocks to turn it into the audience blocks described above, or Turn off to remove it.
What happened to "Magic Audience"? Magic Audience is an older Rules node that can no longer be added to new feeds. Use audience blocks on a layer instead.