@friedbotstudio/create-baseline 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -10
- package/bin/cli.js +46 -15
- package/obj/template/.claude/commands/init-project-doctor.md +74 -0
- package/obj/template/.claude/hooks/lib/resume_writer.py +14 -1
- package/obj/template/.claude/hooks/track_guard.sh +11 -1
- package/obj/template/.claude/manifest.json +848 -230
- package/obj/template/.claude/schemas/workflow-track.v1.json +64 -0
- package/obj/template/.claude/skills/audit-baseline/audit.sh +6 -3
- package/obj/template/.claude/skills/chore/SKILL.md +2 -2
- package/obj/template/.claude/skills/harness/SKILL.md +15 -6
- package/obj/template/.claude/skills/intake/SKILL.md +1 -1
- package/obj/template/.claude/skills/swarm-plan/SKILL.md +2 -0
- package/obj/template/.claude/skills/tdd/SKILL.md +2 -2
- package/obj/template/.claude/skills/triage/SKILL.md +29 -6
- package/obj/template/.claude/skills/triage/seed-tasklist.mjs +107 -0
- package/obj/template/.claude/skills/upgrade-project/SKILL.md +121 -0
- package/obj/template/.claude/workflows.jsonl +6 -0
- package/obj/template/CLAUDE.md +14 -19
- package/obj/template/docs/init/seed.md +152 -7
- package/package.json +1 -1
- package/src/.claude/workflows.template.jsonl +6 -0
- package/src/CLAUDE.template.md +14 -19
- package/src/cli/diff-render.js +54 -0
- package/src/cli/install.js +38 -3
- package/src/cli/manifest.js +7 -3
- package/src/cli/merge.js +107 -13
- package/src/cli/track-tasklist-materializer.js +223 -0
- package/src/cli/tui/upgrade.js +130 -27
- package/src/cli/upgrade-tiers.js +256 -0
- package/src/cli/workflow-migrator.js +40 -0
- package/src/cli/workflows-validator-invariants.js +417 -0
- package/src/cli/workflows-validator-predicates.js +19 -0
- package/src/cli/workflows-validator.js +156 -0
- package/src/seed.template.md +152 -7
- package/obj/template/.claude/skills/google-analytics/SKILL.md +0 -129
- package/obj/template/.claude/skills/google-analytics/references/audiences.md +0 -389
- package/obj/template/.claude/skills/google-analytics/references/bigquery.md +0 -470
- package/obj/template/.claude/skills/google-analytics/references/custom-dimensions.md +0 -355
- package/obj/template/.claude/skills/google-analytics/references/custom-events.md +0 -383
- package/obj/template/.claude/skills/google-analytics/references/data-management.md +0 -416
- package/obj/template/.claude/skills/google-analytics/references/debugview.md +0 -364
- package/obj/template/.claude/skills/google-analytics/references/events-fundamentals.md +0 -398
- package/obj/template/.claude/skills/google-analytics/references/gtag.md +0 -502
- package/obj/template/.claude/skills/google-analytics/references/gtm-integration.md +0 -483
- package/obj/template/.claude/skills/google-analytics/references/measurement-protocol.md +0 -519
- package/obj/template/.claude/skills/google-analytics/references/privacy.md +0 -441
- package/obj/template/.claude/skills/google-analytics/references/recommended-events.md +0 -464
- package/obj/template/.claude/skills/google-analytics/references/reporting.md +0 -397
- package/obj/template/.claude/skills/google-analytics/references/setup.md +0 -344
- package/obj/template/.claude/skills/google-analytics/references/user-tracking.md +0 -417
- package/obj/template/.claude/skills/optimize-seo/SKILL.md +0 -313
- package/obj/template/.claude/skills/optimize-seo/scripts/pagespeed.mjs +0 -197
- package/obj/template/.claude/skills/pagespeed-insights/LICENSE.md +0 -37
- package/obj/template/.claude/skills/pagespeed-insights/SKILL.md +0 -446
- package/obj/template/.claude/skills/pagespeed-insights/reference.md +0 -50
|
@@ -1,389 +0,0 @@
|
|
|
1
|
-
# GA4 Audiences and Segmentation
|
|
2
|
-
|
|
3
|
-
Expert guidance for creating and managing audiences for analysis, remarketing, and personalisation.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
Audiences in GA4 allow creation of user segments for analysis, remarketing, and personalisation based on dimensions, metrics, and events. Audiences can be exported to Google Ads for targeting and used in GA4 reports for analysis.
|
|
8
|
-
|
|
9
|
-
## Accessing Audiences
|
|
10
|
-
|
|
11
|
-
**Path:** Admin -> Audiences
|
|
12
|
-
|
|
13
|
-
**Available Actions:**
|
|
14
|
-
- View all audiences
|
|
15
|
-
- Create new audiences
|
|
16
|
-
- Edit existing audiences
|
|
17
|
-
- View audience membership
|
|
18
|
-
|
|
19
|
-
## Predefined Audiences
|
|
20
|
-
|
|
21
|
-
GA4 includes template audiences:
|
|
22
|
-
|
|
23
|
-
| Audience | Description |
|
|
24
|
-
|----------|-------------|
|
|
25
|
-
| All Users | All users in selected timeframe |
|
|
26
|
-
| Purchasers | Users who completed purchase (30 days) |
|
|
27
|
-
| New Users | First-time visitors |
|
|
28
|
-
| Returning Users | Repeat visitors |
|
|
29
|
-
| Recent Users | Active in last 7 days |
|
|
30
|
-
|
|
31
|
-
### Activating Predefined Audiences
|
|
32
|
-
|
|
33
|
-
1. Admin -> Audiences -> Create Audience
|
|
34
|
-
2. Select suggested template
|
|
35
|
-
3. Customise conditions if needed
|
|
36
|
-
4. Save audience
|
|
37
|
-
|
|
38
|
-
## Creating Custom Audiences
|
|
39
|
-
|
|
40
|
-
### Basic Process
|
|
41
|
-
|
|
42
|
-
1. Admin -> Audiences -> New Audience
|
|
43
|
-
2. Choose method:
|
|
44
|
-
- Start from scratch
|
|
45
|
-
- Use suggested template
|
|
46
|
-
- Create predictive audience
|
|
47
|
-
3. Configure audience:
|
|
48
|
-
- Name: Descriptive (e.g., "High-Value Shoppers")
|
|
49
|
-
- Description: Optional notes
|
|
50
|
-
- Membership duration: 1-540 days
|
|
51
|
-
4. Add conditions
|
|
52
|
-
5. Preview size
|
|
53
|
-
6. Save
|
|
54
|
-
|
|
55
|
-
### Condition Types
|
|
56
|
-
|
|
57
|
-
#### Dimension Filters
|
|
58
|
-
|
|
59
|
-
Filter by user or event attributes:
|
|
60
|
-
|
|
61
|
-
```
|
|
62
|
-
country == "United States"
|
|
63
|
-
device_category == "mobile"
|
|
64
|
-
platform == "web"
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
**Available Dimensions:**
|
|
68
|
-
- User: city, country, device_category, platform
|
|
69
|
-
- Event: event_name, page_location, item_id
|
|
70
|
-
- Custom: Any registered custom dimensions
|
|
71
|
-
|
|
72
|
-
#### Metric Filters
|
|
73
|
-
|
|
74
|
-
Filter by quantitative measures:
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
totalRevenue > 100
|
|
78
|
-
sessionCount >= 3
|
|
79
|
-
engagementTime > 60
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
**Available Metrics:**
|
|
83
|
-
- Event count
|
|
84
|
-
- Session count
|
|
85
|
-
- Revenue
|
|
86
|
-
- Engagement time
|
|
87
|
-
- Conversion count
|
|
88
|
-
|
|
89
|
-
#### Event Conditions
|
|
90
|
-
|
|
91
|
-
Include/exclude based on events:
|
|
92
|
-
|
|
93
|
-
**Include users who:**
|
|
94
|
-
- Have triggered specific event
|
|
95
|
-
- Have NOT triggered event
|
|
96
|
-
- Triggered event with specific parameters
|
|
97
|
-
|
|
98
|
-
**Example:** Users who triggered `purchase` with `value > 50`
|
|
99
|
-
|
|
100
|
-
#### Sequence Conditions
|
|
101
|
-
|
|
102
|
-
Build audiences based on event order:
|
|
103
|
-
|
|
104
|
-
**Example:** Users who:
|
|
105
|
-
1. Viewed product (view_item)
|
|
106
|
-
2. Added to cart (add_to_cart)
|
|
107
|
-
3. Did NOT complete purchase (within 7 days)
|
|
108
|
-
|
|
109
|
-
### Membership Duration
|
|
110
|
-
|
|
111
|
-
| Duration | Use Case |
|
|
112
|
-
|----------|----------|
|
|
113
|
-
| 1-7 days | Short campaigns |
|
|
114
|
-
| 30-90 days | Remarketing |
|
|
115
|
-
| 540 days | Lifetime segments |
|
|
116
|
-
|
|
117
|
-
**How it works:**
|
|
118
|
-
- User enters when conditions met
|
|
119
|
-
- Stays for duration period
|
|
120
|
-
- Exits after duration (unless conditions still met)
|
|
121
|
-
|
|
122
|
-
## Audience Examples
|
|
123
|
-
|
|
124
|
-
### High-Value Customers
|
|
125
|
-
|
|
126
|
-
```
|
|
127
|
-
Conditions:
|
|
128
|
-
- totalRevenue > 500 (lifetime)
|
|
129
|
-
- purchaseCount >= 3
|
|
130
|
-
|
|
131
|
-
Membership: 540 days
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
### Cart Abandoners
|
|
135
|
-
|
|
136
|
-
```
|
|
137
|
-
Sequence:
|
|
138
|
-
1. add_to_cart (within last 7 days)
|
|
139
|
-
2. Did NOT: purchase
|
|
140
|
-
|
|
141
|
-
Membership: 7 days
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
### Engaged Mobile Users
|
|
145
|
-
|
|
146
|
-
```
|
|
147
|
-
Conditions:
|
|
148
|
-
- deviceCategory == "mobile"
|
|
149
|
-
- sessionCount >= 5 (last 30 days)
|
|
150
|
-
- avgEngagementTime > 60 seconds
|
|
151
|
-
|
|
152
|
-
Membership: 30 days
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
### Product Category Viewers
|
|
156
|
-
|
|
157
|
-
```
|
|
158
|
-
Event Condition:
|
|
159
|
-
- view_item (last 30 days)
|
|
160
|
-
- item_category == "Electronics"
|
|
161
|
-
|
|
162
|
-
Membership: 30 days
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
### Geographic Segment
|
|
166
|
-
|
|
167
|
-
```
|
|
168
|
-
Conditions:
|
|
169
|
-
- country == "United States"
|
|
170
|
-
- region == "California"
|
|
171
|
-
|
|
172
|
-
Membership: 90 days
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
### Newsletter Subscribers
|
|
176
|
-
|
|
177
|
-
```
|
|
178
|
-
Event Condition:
|
|
179
|
-
- sign_up (any time)
|
|
180
|
-
- method == "newsletter"
|
|
181
|
-
|
|
182
|
-
Membership: 540 days
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
## Predictive Audiences
|
|
186
|
-
|
|
187
|
-
GA4 can create audiences based on predicted user behaviour.
|
|
188
|
-
|
|
189
|
-
### Available Predictions
|
|
190
|
-
|
|
191
|
-
| Prediction | Description |
|
|
192
|
-
|------------|-------------|
|
|
193
|
-
| Purchase probability | Likelihood to purchase (7 days) |
|
|
194
|
-
| Churn probability | Likelihood to not return (7 days) |
|
|
195
|
-
| Revenue prediction | Expected 28-day revenue |
|
|
196
|
-
|
|
197
|
-
### Requirements
|
|
198
|
-
|
|
199
|
-
- 1,000+ users triggering target event (28 days)
|
|
200
|
-
- Sufficient historical data
|
|
201
|
-
- Model quality threshold met
|
|
202
|
-
|
|
203
|
-
### Creating Predictive Audience
|
|
204
|
-
|
|
205
|
-
1. Create New Audience
|
|
206
|
-
2. Choose "Predictive"
|
|
207
|
-
3. Select metric (purchase probability, etc.)
|
|
208
|
-
4. Set threshold (e.g., > 50% purchase probability)
|
|
209
|
-
5. Save
|
|
210
|
-
|
|
211
|
-
### Use Cases
|
|
212
|
-
|
|
213
|
-
- Target likely purchasers with ads
|
|
214
|
-
- Re-engage likely-to-churn users
|
|
215
|
-
- Focus on high-revenue potential users
|
|
216
|
-
|
|
217
|
-
## Audience Triggers
|
|
218
|
-
|
|
219
|
-
### What are Triggers
|
|
220
|
-
|
|
221
|
-
Actions that fire when user enters audience.
|
|
222
|
-
|
|
223
|
-
### Supported Actions
|
|
224
|
-
|
|
225
|
-
- Send event to GA4
|
|
226
|
-
- Create Google Ads remarketing list
|
|
227
|
-
- Send to Google Ads for targeting
|
|
228
|
-
|
|
229
|
-
### Setup
|
|
230
|
-
|
|
231
|
-
1. Create audience
|
|
232
|
-
2. In settings, add trigger
|
|
233
|
-
3. Configure action (event name, Ads account)
|
|
234
|
-
4. Save
|
|
235
|
-
|
|
236
|
-
### Use Cases
|
|
237
|
-
|
|
238
|
-
- Track when users become high-value
|
|
239
|
-
- Send conversion events to Ads
|
|
240
|
-
- Real-time remarketing lists
|
|
241
|
-
|
|
242
|
-
## Exporting to Google Ads
|
|
243
|
-
|
|
244
|
-
### Prerequisites
|
|
245
|
-
|
|
246
|
-
- Google Ads account linked
|
|
247
|
-
- Admin -> Product Links -> Google Ads Links
|
|
248
|
-
- Minimum audience size met
|
|
249
|
-
|
|
250
|
-
### Minimum Sizes
|
|
251
|
-
|
|
252
|
-
| Region | Minimum Users |
|
|
253
|
-
|--------|---------------|
|
|
254
|
-
| Standard | 100 active |
|
|
255
|
-
| EEA/UK | 1,000 active |
|
|
256
|
-
|
|
257
|
-
### Setup
|
|
258
|
-
|
|
259
|
-
1. Link Google Ads account
|
|
260
|
-
2. In audience, enable "Ads Personalisation"
|
|
261
|
-
3. Audience appears in Ads within 24-48 hours
|
|
262
|
-
|
|
263
|
-
### Export Destinations
|
|
264
|
-
|
|
265
|
-
- Google Ads (remarketing, targeting)
|
|
266
|
-
- Display & Video 360
|
|
267
|
-
- Search Ads 360
|
|
268
|
-
|
|
269
|
-
## Analysing Audiences
|
|
270
|
-
|
|
271
|
-
### Viewing Audience Data
|
|
272
|
-
|
|
273
|
-
**Reports -> Realtime:**
|
|
274
|
-
- Active users in audience
|
|
275
|
-
|
|
276
|
-
**Reports -> User Acquisition:**
|
|
277
|
-
- How audience members acquired
|
|
278
|
-
|
|
279
|
-
**Explorations -> Segment Overlap:**
|
|
280
|
-
- Compare audiences
|
|
281
|
-
|
|
282
|
-
**Explorations -> User Lifetime:**
|
|
283
|
-
- LTV of audience members
|
|
284
|
-
|
|
285
|
-
### Audience Metrics
|
|
286
|
-
|
|
287
|
-
| Metric | Description |
|
|
288
|
-
|--------|-------------|
|
|
289
|
-
| Total Users | Current members |
|
|
290
|
-
| New Users (7/30 days) | Recent additions |
|
|
291
|
-
| User Growth | Trend over time |
|
|
292
|
-
|
|
293
|
-
## Using Audiences in Explorations
|
|
294
|
-
|
|
295
|
-
### As Segments
|
|
296
|
-
|
|
297
|
-
1. Open Exploration
|
|
298
|
-
2. Click "+" in Segments
|
|
299
|
-
3. Select audience
|
|
300
|
-
4. Apply to analysis
|
|
301
|
-
|
|
302
|
-
### Comparing Audiences
|
|
303
|
-
|
|
304
|
-
1. Add multiple audiences as segments
|
|
305
|
-
2. View side-by-side comparison
|
|
306
|
-
3. Analyse differences
|
|
307
|
-
|
|
308
|
-
## Limits and Quotas
|
|
309
|
-
|
|
310
|
-
| Limit | Standard | 360 |
|
|
311
|
-
|-------|----------|-----|
|
|
312
|
-
| Audiences per property | 100 | 400 |
|
|
313
|
-
| Conditions per audience | 10 | 10 |
|
|
314
|
-
| Membership duration max | 540 days | 540 days |
|
|
315
|
-
|
|
316
|
-
## Common Issues
|
|
317
|
-
|
|
318
|
-
### Audience Size Too Small
|
|
319
|
-
|
|
320
|
-
**Causes:**
|
|
321
|
-
- Conditions too restrictive
|
|
322
|
-
- Low traffic volume
|
|
323
|
-
- Date range too narrow
|
|
324
|
-
|
|
325
|
-
**Solutions:**
|
|
326
|
-
1. Broaden conditions
|
|
327
|
-
2. Increase membership duration
|
|
328
|
-
3. Wait for more traffic
|
|
329
|
-
|
|
330
|
-
### Audience Not in Google Ads
|
|
331
|
-
|
|
332
|
-
**Causes:**
|
|
333
|
-
- Below minimum size
|
|
334
|
-
- Link not configured
|
|
335
|
-
- Ads personalisation disabled
|
|
336
|
-
|
|
337
|
-
**Solutions:**
|
|
338
|
-
1. Check audience size
|
|
339
|
-
2. Verify Google Ads link
|
|
340
|
-
3. Enable Ads Personalisation
|
|
341
|
-
|
|
342
|
-
### Stale Audience Data
|
|
343
|
-
|
|
344
|
-
**Cause:** Audiences update with delay
|
|
345
|
-
|
|
346
|
-
**Solution:** Wait 24-48 hours for updates
|
|
347
|
-
|
|
348
|
-
## Best Practices
|
|
349
|
-
|
|
350
|
-
### Naming Conventions
|
|
351
|
-
|
|
352
|
-
Use clear, descriptive names:
|
|
353
|
-
- "High-Value Customers - $500+"
|
|
354
|
-
- "Cart Abandoners - Last 7 Days"
|
|
355
|
-
- "Newsletter Subscribers"
|
|
356
|
-
|
|
357
|
-
### Documentation
|
|
358
|
-
|
|
359
|
-
Document each audience:
|
|
360
|
-
- Purpose
|
|
361
|
-
- Conditions used
|
|
362
|
-
- Expected size
|
|
363
|
-
- Use cases
|
|
364
|
-
|
|
365
|
-
### Regular Review
|
|
366
|
-
|
|
367
|
-
- Audit audiences quarterly
|
|
368
|
-
- Remove unused audiences
|
|
369
|
-
- Update conditions as needed
|
|
370
|
-
|
|
371
|
-
## Quick Reference
|
|
372
|
-
|
|
373
|
-
### Audience Limits
|
|
374
|
-
|
|
375
|
-
- Maximum: 100 audiences (standard)
|
|
376
|
-
- Membership: 1-540 days
|
|
377
|
-
- Export minimum: 100 users (1,000 EEA/UK)
|
|
378
|
-
|
|
379
|
-
### Export Destinations
|
|
380
|
-
|
|
381
|
-
- Google Ads
|
|
382
|
-
- Display & Video 360
|
|
383
|
-
- Search Ads 360
|
|
384
|
-
|
|
385
|
-
### Predictive Options
|
|
386
|
-
|
|
387
|
-
- Purchase probability
|
|
388
|
-
- Churn probability
|
|
389
|
-
- Revenue prediction
|