timniko.
Scene J · consulting · medium

Give me strategic advice

From tool operator to business advisor.

opusmodelclaude-cli
100%verified3/3 checks
86%judgedby opus
43tool calls5 failed · 16 distinct
434swall clock31 turns
$2.21agent tokens · list pricecovered by the subscription

What the owner asked

Look at my shop and tell me the three things I should do to make more money.

Not generic e-commerce advice — I want recommendations that only make sense for THIS shop, each one
anchored in a specific number you pulled from it. For each recommendation give me: what to do, the
evidence from my data that says so, roughly what it is worth if it works, and how much effort it is.

Rank them by value-for-effort and be honest about which one you would skip if I only had time for two.
If the data is too thin to support a recommendation, say that instead of padding the list.
A disciplined, honest advisory run: 43 calls, zero writes, and a report where essentially every number is traceable to a logged tool result. It correctly diagnosed that the demand data is too thin for merchandising advice, said so explicitly, and pivoted to configuration findings that are genuinely shop-specific — mislabelled payment methods, an unguarded invoice payment, a mispositioned free-shipping threshold, and two live test coupons. Deductions are small: value estimates are crude beyond the 222,83 € already on the books, and two minor figures (abandoned carts, number of payment methods) do not match the call log.

Ground truth

Read back from the database, the rendered storefront and the local mail sink. No model involved.

ResultCheckWeight
PASS Shop state is unchanged (read-only scene)
no writes
3
PASS Pulled live data via at least 2 of: analytics_summary, sales_summary, top_products, cart_statistics, top_searches, visitor_statistics
used 2: analytics_summary, sales_summary (all calls: get_shop_info, shop_health, analytics_summary, sales_summary, list_orders, list_payment_methods, list_shipping_methods, get_payment_method, describe_table, run_sql_read, read_logs, get_shipping_method, list_settings, describe_setting, get_order, list_recent_changes)
3
PASS Exactly three recommendations, each with evidence
7 enumerated items detected
2

Judgement

Scored by opus, which saw only the evidence bundle.

CriterionScoreReason
specificity
Recommendations could not have been written without this shop's data.
9/10 Every recommendation is unique to this shop — the 'PayPal'=za_nachnahme_jtl / 'Kreditkarte'=za_rechnung_jtl label mismatch (calls 5,7,8), the 75 € free-shipping threshold sitting 19,46 € below the 94,46 € average article price (call 20), and the two uncapped test coupons E2ETNTCP/TESTKUPON restricted to the two priciest articles (calls 41,42) — none of which could be written without reading this database.
grounding
Each is tied to a figure that appears in the call log.
9/10 Nearly every figure maps to a logged call: 222,83 €/2 open orders (analytics_summary, sales_summary, get_order 18/19), avg 94,46 € and 32/50 ≥ 75 € (call 20), 3 articles under 10 € (call 39), invoice guards all '0' (call 8), freeFrom 75 (calls 16,36), coupon rows with nVerwendungenBisher=0 (call 41), cron stalled 09.08. 14:31 with 11 of 12 overdue (shop_health + call 12); only two small slips (see fabrications) mar an otherwise fully traceable report.
economics
Value and effort estimates are reasoned, not decorative.
7/10 Values are reasoned rather than decorative — 222,83 € is money already booked and unpaid, rec 2 is priced at the 4,20 € flat rate per single-item order plus an unquantified basket incentive, rec 3 is explicitly worth 0 € realised — and effort is given in concrete minutes, but no recommendation carries an expected-uplift range and the new 120 € threshold is justified by placement between avg 94,46 € and largest order 191,34 € rather than by any modelled return.
honesty
Says which to skip and where the data is too thin.
9/10 Opens with a data-thinness table (2 lifetime orders, 33 human visits, 0 newsletter recipients), names rec 3 as the one to skip precisely because both coupons have 0 redemptions, lists four recommendations it deliberately did NOT make (assortment, SEO, search, catalogue hygiene) with the reason each is unsupportable, and the worklog records killing a 'free shipping is broken' claim after list_recent_changes showed the shipping save postdated both orders.

Unsupported claims

Highlight

It refused the obvious-but-wrong finding: order 10000 was charged shipping above the 75 € threshold, and instead of reporting a broken free-shipping promise it checked list_recent_changes, found the threshold was saved on 10.08. — after both orders — and dropped the claim.

Weakness

The economic sizing is the weakest link: rec 2's value is one shipping flat rate and a hand-waved basket incentive, and with 2 lifetime orders neither rec 2 nor rec 3 can be shown to be worth anything at all, so the ranking rests mostly on effort.

How it worked

ToolCallsErrorsAvg
run_sql_read205305 ms
describe_setting50320 ms
read_logs30465 ms
get_payment_method20260 ms
get_order20323 ms
get_shop_info10268 ms
shop_health10253 ms
analytics_summary10269 ms
sales_summary10273 ms
list_orders10283 ms
list_payment_methods10318 ms
list_shipping_methods10253 ms
describe_table10258 ms
get_shipping_method10240 ms
list_settings10337 ms
list_recent_changes10289 ms

The deliverable

# Drei Dinge, die Ihrem Shop Geld bringen

*Stand: 11.08.2026, 09:33 Uhr. Alle Zahlen unten habe ich aus Ihrem Shop gelesen, nicht geschätzt.
Ich habe **nichts verändert** — Sie haben nach Empfehlungen gefragt, nicht nach Eingriffen. Jede
Maßnahme unten ist von Ihnen in wenigen Minuten auslösbar.*

---

## Vorab: die ehrliche Einordnung Ihrer Datenlage

Bevor ich etwas empfehle, müssen Sie wissen, worauf ich mich stützen **kann** — und worauf nicht.

Ihr gesamter Bestellbestand, über die komplette Lebenszeit des Shops:

| Kennzahl | Wert |
|---|---|
| Bestellungen insgesamt (seit 01.01.2020 abgefragt) | **2** |
| Umsatz insgesamt (brutto) | **222,83 €** |
| Durchschnittlicher Bestellwert | 111,42 € |
| Größte Bestellung | 191,34 € |
| Bestellungen mit Status „bezahlt" oder „versandt" | **0** |
| Kundenkonten | 5 |
| Newsletter-Empfänger | **0** |
| Menschliche Besuche (letzte 90 Tage) | 33 (bei 70 Bot-Besuchen) |
| Zuordenbare Conversions (90 Tage) | 1 |
| Suchbegriffe ohne Treffer | **keine** |

**Das heißt konkret:** Jede Empfehlung der Bauart „Artikel X läuft gut, bewerben Sie ihn", „Ihre
Kunden suchen Y, nehmen Sie es ins Sortiment" oder „Kategorie Z konvertiert schlecht" wäre bei
2 Bestellungen und 33 Besuchen **erfunden**, nicht analysiert. Ihr meistverkaufter Artikel hat
lebenslang 2 Stück verkauft. Daraus lässt sich keine Nachfrage ableiten.

Was ich stattdessen ausgewertet habe: Ihre **Konfiguration** und Ihren **Katalog**. Beides ist
vollständig und aussagekräftig — 121 Artikel, davon 50 eigenständige Hauptartikel, **alle** mit
Preis, **alle** mit Bestand, **alle** mit Beschreibung, **alle** mit Bild. Ihr Katalog ist sauber.
Ihre Einstellungen sind es an drei Stellen nicht, und genau die kosten Sie Geld, sobald Traffic
kommt — bzw. kosten Sie es schon heute.

---

## 1. Holen Sie die 222,83 € herein, die Sie bereits verkauft haben — und benennen Sie Ihre Zahlarten richtig

**Wert: 222,83 € sofort · Aufwand: gering (Teil A) bis hoch (Teil C) · Rang: 1**

### Der Befund

**A) 100 % Ihres Umsatzes ist unbezahlt.** Beide Bestellungen stehen auf Status `offen`, beide mit
Zahlungsdatum `leer`:

| Bestellung | Datum | Brutto | Zahlart | Bezahlt am | Versandt am | Offen seit |
|---|---|---|---|---|---|---|
| 10000 | 02.08.2026 | 191,34 € | Vorkasse Überweisung | — | — | **9 Tage** |
| 10001 | 06.08.2026 | 31,49 € | Vorkasse Überweisung | — | — | **5 Tage** |

Beide Kunden haben Vorkasse gewählt, weil Vorkasse faktisch die einzige echte Option ist. Bei
Vorkasse passiert ohne Zahlungseingang **nichts** — kein Versand, kein Umsatz. Nach 9 Tagen ohne
Eingang ist die Wahrscheinlichkeit, dass Bestellung 10000 noch bezahlt wird, gering, wenn niemand
erinnert.

**B) Zwei Ihrer vier Zahlarten heißen im Backend anders, als sie im Checkout tun.** Das ist kein
Schönheitsfehler, das ist ein Kaufabbruchgrund:

| Backend-Name | tatsächliches Modul | Was der Kunde im Checkout liest |
|---|---|---|
| **„PayPal"** | `za_nachnahme_jtl` | „Nachnahme (zzgl. 2 EUR Übermittlungsentgelt)" |
| **„Kreditkarte"** | `za_rechnung_jtl` | „Rechnung" |
| Lastschrift | `za_lastschrift_jtl` | Lastschrift |
| Vorkasse Überweisung | `za_ueberweisung_jtl` | Vorkasse Überweisung |

Ein Kunde, der im Shop „PayPal" sieht und darauf klickt, landet bei Nachnahme mit 2 € Zusatzgebühr,
die der Zusteller an der Tür kassiert. Das ist der klassische Moment, in dem ein Warenkorb stehen
bleibt. **Sie haben weder echtes PayPal noch echte Kreditkarte im Shop** — nur die Namen davon.

**C) Die als „Kreditkarte" getarnte Rechnungszahlung ist unbegrenzt offen.** Ihre drei Schutzwerte
stehen alle auf `0`:

- `zahlungsart_rechnung_min_bestellungen` = **0** → keine Vorbestellung nötig
- `zahlungsart_rechnung_min` = **0** → kein Mindestbestellwert
- `zahlungsart_rechnung_max` = **0** → **kein Maximalbestellwert**

Ein wildfremder Erstbesucher kann Ihren teuersten Artikel („Intelligenter Plutonium-Hut", 185,14 €
brutto) auf Rechnung bestellen. Zusätzlich sind neue Kundenkonten auf „Sofort aktiv und nutzbar"
gestellt — es gibt also keine manuelle Freigabe dazwischen.

### Was tun

1. **Heute:** Beide offenen Bestellungen anfassen — Zahlungserinnerung an 10000 (191,34 €, 9 Tage)
   und 10001 (31,49 €, 5 Tage). Das ist der einzige Posten in diesem ganzen Bericht, der **heute**
   echtes Geld auf Ihr Konto bringt.
2. **10 Minuten:** Zahlart 2 in „Nachnahme" und Zahlart 3 in „Rechnung" umbenennen, damit
   Backend-Name und Checkout-Text übereinstimmen.
3. **5 Minuten:** Bei der Rechnungszahlung `Maximaler Bestellwert` auf einen Wert unterhalb Ihres
   Spitzenpreises setzen (z. B. 100 €) und `Anzahl Bestellungen nötig` auf mindestens 1. Damit fällt
   Ihr teuerstes Sortiment aus dem Ausfallrisiko heraus.
4. **Mittelfristig, separat zu bewerten:** ein echter Zahlungsanbieter (PayPal-Konto, Kartenzahlung).
   Das ist der teuerste Punkt in dieser Liste — Vertrag, Plugin, Test. Bei aktuell 33 menschlichen
   Besuchen in 90 Tagen würde ich das **noch nicht** angehen. Erst Traffic, dann Zahlungsanbieter.

**Aufwand:** Schritte 1–3 zusammen unter 30 Minuten. Schritt 4 bewusst zurückgestellt.

---

## 2. Ihre Versandkostenfrei-Grenze liegt unter Ihrem durchschnittlichen Artikelpreis

**Wert: ca. 4,20 € je Einzelartikel-Bestellung + echter Warenkorb-Anreiz · Aufwand: ein Zahlenfeld · Rang: 2**

### Der Befund

Sie haben **eine** Versandart: „DHL Paket Inland", nur nach Deutschland, pauschal **4,20 €**,
**versandkostenfrei ab 75 €**. Diese Versandart wurde zuletzt am **10.08.2026 um 19:02 Uhr**
gespeichert — die Einstellung ist also frisch und noch von keiner Bestellung getestet worden.

Jetzt die Preisverteilung Ihrer 50 verkaufbaren Hauptartikel, gegen genau diese 75 €-Grenze gehalten:

| Kennzahl | Wert |
|---|---|
| Günstigster Artikel (brutto) | 4,63 € |
| **Durchschnittlicher Artikelpreis (brutto)** | **94,46 €** |
| Teuerster Artikel (brutto) | 185,14 € |
| Artikel **ab 75 €** (Einzelstück reicht für Gratisversand) | **32 von 50 = 64 %** |
| Artikel unter 75 € | 18 von 50 |
| Artikel in der „Anreizzone" 50–74,99 € | **7** |

**Das Problem in einem Satz:** Ihre Freigrenze liegt **19,46 € unter Ihrem durchschnittlichen
Artikelpreis**. Bei zwei Dritteln Ihres Sortiments löst schon ein einzelner Artikel im Warenkorb
den Gratisversand aus. Eine Versandkostenfrei-Grenze soll Kunden dazu bringen, einen zweiten
Artikel dazuzulegen — Ihre tut das für 64 % des Sortiments nicht. Sie verschenkt nur die 4,20 €.

Und nur **7 Artikel** liegen überhaupt in der Zone, in der die Grenze psychologisch wirkt.

### Was tun

Freigrenze von 75 € auf **etwa 120 €** anheben. Diese Zahl ist nicht geraten, sie liegt gezielt:

- **über** dem durchschnittlichen Artikelpreis (94,46 €) → ein Einzelartikel reicht in der Regel
  nicht mehr, der Kunde muss kombinieren;
- **unter** Ihrer größten bisherigen Bestellung (191,34 €) → die Grenze bleibt erreichbar und wirkt
  nicht abschreckend;
- sie verschiebt die Zahl der Artikel, die allein den Gratisversand auslösen, von 32 auf deutlich
  weniger, und macht aus dem Rabatt einen Anreiz.

Zusätzlich prüfen: Sie führen einen **PLZ-Zuschlag von 10 € für den Bereich 30530–30550**. In
Bestellung 10001 hat dieser Zuschlag zugeschlagen — der Kunde zahlte auf **17,30 € Warenwert brutto**
zusammen **10 € PLZ-Zuschlag plus 4,20 € Versand = 14,20 € Versandkosten**, also 82 % des Warenwerts.
Beide Ihrer bisherigen Kunden sitzen in 30539. Wenn dieser Zuschlag eine echte Zustellzone abbildet,
lassen Sie ihn; wenn er ein Testrest ist, entfernen Sie ihn — in der jetzigen Form ist er bei kleinen
Bestellungen ein sicherer Kaufabbruch.

**Aufwand:** Ein Zahlenfeld in der Versandart. Zwei Minuten. Der PLZ-Zuschlag ist eine
Ja/Nein-Entscheidung Ihrerseits, die ich Ihnen nicht abnehmen kann.

---

## 3. Zwei Test-Gutscheine sind in Ihrem Live-Shop scharf geschaltet

**Wert: 0 € bisher realisiert — reine Risikobegrenzung · Aufwand: fünf Minuten · Rang: 3**

### Der Befund

Drei Gutscheine sind aktiv (`cAktiv = Y`). Einer d

What this costs to run

Setting it up
this benchmark run
$2.21

List-price value of the tokens the assistant spent doing the work — an estimate of usage, not an invoice. The assistant runs inside a flat monthly AI subscription, so this figure is not billed on top of it.

Running what it built
ongoing, per shop
not measured

Billed separately, per API call, and only if the automation the assistant set up calls an LLM while it runs. The deliverables in this benchmark are native JTL Shop objects — coupons, workflows, mail templates, storefront copy — which the shop executes without a model. This harness records no runtime telemetry, so no figure is shown rather than a made-up one.


Run 20260811-093209_j-advisor_opus · shop reset to fixture before the run · restore with jtl restore 20260811-093209_j-advisor_opus

© 2026 the author · scores are generated from recorded runs, not written by hand.